IFCReaderGen.cpp 317 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855
  1. /*
  2. Open Asset Import Library (ASSIMP)
  3. ----------------------------------------------------------------------
  4. Copyright (c) 2006-2010, ASSIMP Development Team
  5. All rights reserved.
  6. Redistribution and use of this software in source and binary forms,
  7. with or without modification, are permitted provided that the
  8. following conditions are met:
  9. * Redistributions of source code must retain the above
  10. copyright notice, this list of conditions and the
  11. following disclaimer.
  12. * Redistributions in binary form must reproduce the above
  13. copyright notice, this list of conditions and the
  14. following disclaimer in the documentation and/or other
  15. materials provided with the distribution.
  16. * Neither the name of the ASSIMP team, nor the names of its
  17. contributors may be used to endorse or promote products
  18. derived from this software without specific prior
  19. written permission of the ASSIMP Development Team.
  20. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  21. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  22. LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  23. A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  24. OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  25. SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  26. LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  27. DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  28. THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  29. (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  30. OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  31. ----------------------------------------------------------------------
  32. */
  33. /** MACHINE-GENERATED by scripts/ICFImporter/CppGenerator.py */
  34. #include "AssimpPCH.h"
  35. #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
  36. #include "IFCReaderGen.h"
  37. namespace Assimp {
  38. using namespace IFC;
  39. namespace {
  40. typedef EXPRESS::ConversionSchema::SchemaEntry SchemaEntry;
  41. const SchemaEntry schema_raw[] = {
  42. SchemaEntry("ifctrimmingselect",NULL )
  43. , SchemaEntry("ifcstateenum",NULL )
  44. , SchemaEntry("ifcelectricconductancemeasure",NULL )
  45. , SchemaEntry("ifcvolumetricflowratemeasure",NULL )
  46. , SchemaEntry("ifcfillstyleselect",NULL )
  47. , SchemaEntry("ifcprojectorderrecordtypeenum",NULL )
  48. , SchemaEntry("ifctransformertypeenum",NULL )
  49. , SchemaEntry("ifcactorselect",NULL )
  50. , SchemaEntry("ifcmomentofinertiameasure",NULL )
  51. , SchemaEntry("ifchatchlinedistanceselect",NULL )
  52. , SchemaEntry("ifcsectionmodulusmeasure",NULL )
  53. , SchemaEntry("ifcvectorordirection",NULL )
  54. , SchemaEntry("ifcpresentabletext",NULL )
  55. , SchemaEntry("ifcluminousfluxmeasure",NULL )
  56. , SchemaEntry("ifcelectrictimecontroltypeenum",NULL )
  57. , SchemaEntry("ifclightdistributiondatasourceselect",NULL )
  58. , SchemaEntry("ifcdimensioncount",NULL )
  59. , SchemaEntry("ifcflowdirectionenum",NULL )
  60. , SchemaEntry("ifcratiomeasure",NULL )
  61. , SchemaEntry("ifcbooleanoperator",NULL )
  62. , SchemaEntry("ifcjunctionboxtypeenum",NULL )
  63. , SchemaEntry("ifcangularvelocitymeasure",NULL )
  64. , SchemaEntry("ifccompressortypeenum",NULL )
  65. , SchemaEntry("ifcplaneanglemeasure",NULL )
  66. , SchemaEntry("ifcresourceconsumptionenum",NULL )
  67. , SchemaEntry("ifcobjecttypeenum",NULL )
  68. , SchemaEntry("ifcplatetypeenum",NULL )
  69. , SchemaEntry("ifcdraughtingcalloutelement",NULL )
  70. , SchemaEntry("ifcdirectionsenseenum",NULL )
  71. , SchemaEntry("ifcmeasurevalue",NULL )
  72. , SchemaEntry("ifcisothermalmoisturecapacitymeasure",NULL )
  73. , SchemaEntry("ifcthermalloadsourceenum",NULL )
  74. , SchemaEntry("ifcthermalresistancemeasure",NULL )
  75. , SchemaEntry("ifccablesegmenttypeenum",NULL )
  76. , SchemaEntry("ifccondensertypeenum",NULL )
  77. , SchemaEntry("ifcclassificationnotationselect",NULL )
  78. , SchemaEntry("ifcrailingtypeenum",NULL )
  79. , SchemaEntry("ifcpipesegmenttypeenum",NULL )
  80. , SchemaEntry("ifcwindowstyleoperationenum",NULL )
  81. , SchemaEntry("ifcabsorbeddosemeasure",NULL )
  82. , SchemaEntry("ifccolourorfactor",NULL )
  83. , SchemaEntry("ifcchillertypeenum",NULL )
  84. , SchemaEntry("ifcmaterialselect",NULL )
  85. , SchemaEntry("ifccurvestylefontselect",NULL )
  86. , SchemaEntry("ifcunitaryequipmenttypeenum",NULL )
  87. , SchemaEntry("ifcwarpingmomentmeasure",NULL )
  88. , SchemaEntry("ifctransportelementtypeenum",NULL )
  89. , SchemaEntry("ifclinearmomentmeasure",NULL )
  90. , SchemaEntry("ifcdatetimeselect",NULL )
  91. , SchemaEntry("ifcboilertypeenum",NULL )
  92. , SchemaEntry("ifcstairtypeenum",NULL )
  93. , SchemaEntry("ifcmolecularweightmeasure",NULL )
  94. , SchemaEntry("ifcelectricresistancemeasure",NULL )
  95. , SchemaEntry("ifcrotationalmassmeasure",NULL )
  96. , SchemaEntry("ifcductfittingtypeenum",NULL )
  97. , SchemaEntry("ifcrampflighttypeenum",NULL )
  98. , SchemaEntry("ifctext",NULL )
  99. , SchemaEntry("ifclogicaloperatorenum",NULL )
  100. , SchemaEntry("ifcelementassemblytypeenum",NULL )
  101. , SchemaEntry("ifclinearvelocitymeasure",NULL )
  102. , SchemaEntry("ifcbsplinecurveform",NULL )
  103. , SchemaEntry("ifcvolumemeasure",NULL )
  104. , SchemaEntry("ifcphmeasure",NULL )
  105. , SchemaEntry("ifctextstyleselect",NULL )
  106. , SchemaEntry("ifcfrequencymeasure",NULL )
  107. , SchemaEntry("ifcspaceheatertypeenum",NULL )
  108. , SchemaEntry("ifcpressuremeasure",NULL )
  109. , SchemaEntry("ifcsectionalareaintegralmeasure",NULL )
  110. , SchemaEntry("ifcthermaltransmittancemeasure",NULL )
  111. , SchemaEntry("ifctransitioncode",NULL )
  112. , SchemaEntry("ifcpermeablecoveringoperationenum",NULL )
  113. , SchemaEntry("ifcvaporpermeabilitymeasure",NULL )
  114. , SchemaEntry("ifcfootingtypeenum",NULL )
  115. , SchemaEntry("ifcpiletypeenum",NULL )
  116. , SchemaEntry("ifcplanarforcemeasure",NULL )
  117. , SchemaEntry("ifcsolidanglemeasure",NULL )
  118. , SchemaEntry("ifcidentifier",NULL )
  119. , SchemaEntry("ifcradioactivitymeasure",NULL )
  120. , SchemaEntry("ifcsimplevalue",NULL )
  121. , SchemaEntry("ifcvalue",NULL )
  122. , SchemaEntry("ifcgloballyuniqueid",NULL )
  123. , SchemaEntry("ifcgeometricsetselect",NULL )
  124. , SchemaEntry("ifctubebundletypeenum",NULL )
  125. , SchemaEntry("ifcactuatortypeenum",NULL )
  126. , SchemaEntry("ifcdoorpaneloperationenum",NULL )
  127. , SchemaEntry("ifcyearnumber",NULL )
  128. , SchemaEntry("ifcfillareastyletileshapeselect",NULL )
  129. , SchemaEntry("ifcreinforcingbarroleenum",NULL )
  130. , SchemaEntry("ifccurtainwalltypeenum",NULL )
  131. , SchemaEntry("ifcpositiveplaneanglemeasure",NULL )
  132. , SchemaEntry("ifcprojectedortruelengthenum",NULL )
  133. , SchemaEntry("ifcelectricappliancetypeenum",NULL )
  134. , SchemaEntry("ifcsurfacetextureenum",NULL )
  135. , SchemaEntry("ifcsectiontypeenum",NULL )
  136. , SchemaEntry("ifctimestamp",NULL )
  137. , SchemaEntry("ifcpresentationstyleselect",NULL )
  138. , SchemaEntry("ifcthermaladmittancemeasure",NULL )
  139. , SchemaEntry("ifcglobalorlocalenum",NULL )
  140. , SchemaEntry("ifcdoorstyleoperationenum",NULL )
  141. , SchemaEntry("ifcboxalignment",NULL )
  142. , SchemaEntry("ifctemperaturegradientmeasure",NULL )
  143. , SchemaEntry("ifcinventorytypeenum",NULL )
  144. , SchemaEntry("ifcairtoairheatrecoverytypeenum",NULL )
  145. , SchemaEntry("ifcwindowpaneloperationenum",NULL )
  146. , SchemaEntry("ifcsurfacestyleelementselect",NULL )
  147. , SchemaEntry("ifcairterminalboxtypeenum",NULL )
  148. , SchemaEntry("ifcbooleanoperand",NULL )
  149. , SchemaEntry("ifcheatexchangertypeenum",NULL )
  150. , SchemaEntry("ifctendontypeenum",NULL )
  151. , SchemaEntry("ifctextfontselect",NULL )
  152. , SchemaEntry("ifcpileconstructionenum",NULL )
  153. , SchemaEntry("ifclightemissionsourceenum",NULL )
  154. , SchemaEntry("ifclayereditem",NULL )
  155. , SchemaEntry("ifcelectricflowstoragedevicetypeenum",NULL )
  156. , SchemaEntry("ifccurrencyenum",NULL )
  157. , SchemaEntry("ifccharacterstyleselect",NULL )
  158. , SchemaEntry("ifcprofiletypeenum",NULL )
  159. , SchemaEntry("ifcshearmodulusmeasure",NULL )
  160. , SchemaEntry("ifclinearstiffnessmeasure",NULL )
  161. , SchemaEntry("ifctanktypeenum",NULL )
  162. , SchemaEntry("ifcareameasure",NULL )
  163. , SchemaEntry("ifclamptypeenum",NULL )
  164. , SchemaEntry("ifcmassmeasure",NULL )
  165. , SchemaEntry("ifccoiltypeenum",NULL )
  166. , SchemaEntry("ifcpropertysourceenum",NULL )
  167. , SchemaEntry("ifcbuildingelementproxytypeenum",NULL )
  168. , SchemaEntry("ifcspecularroughness",NULL )
  169. , SchemaEntry("ifcorientationselect",NULL )
  170. , SchemaEntry("ifcsoundpressuremeasure",NULL )
  171. , SchemaEntry("ifcheatfluxdensitymeasure",NULL )
  172. , SchemaEntry("ifcanalysistheorytypeenum",NULL )
  173. , SchemaEntry("ifccountmeasure",NULL )
  174. , SchemaEntry("ifcrotationalfrequencymeasure",NULL )
  175. , SchemaEntry("ifcinteger",NULL )
  176. , SchemaEntry("ifcramptypeenum",NULL )
  177. , SchemaEntry("ifcfiltertypeenum",NULL )
  178. , SchemaEntry("ifcprotectivedevicetypeenum",NULL )
  179. , SchemaEntry("ifcassemblyplaceenum",NULL )
  180. , SchemaEntry("ifccolour",NULL )
  181. , SchemaEntry("ifcpipefittingtypeenum",NULL )
  182. , SchemaEntry("ifcmagneticfluxmeasure",NULL )
  183. , SchemaEntry("ifcelectricgeneratortypeenum",NULL )
  184. , SchemaEntry("ifcalarmtypeenum",NULL )
  185. , SchemaEntry("ifcwarpingconstantmeasure",NULL )
  186. , SchemaEntry("ifcsensortypeenum",NULL )
  187. , SchemaEntry("ifcpositiveratiomeasure",NULL )
  188. , SchemaEntry("ifcwindowpanelpositionenum",NULL )
  189. , SchemaEntry("ifcmotorconnectiontypeenum",NULL )
  190. , SchemaEntry("ifclogical",NULL )
  191. , SchemaEntry("ifcthermalexpansioncoefficientmeasure",NULL )
  192. , SchemaEntry("ifcforcemeasure",NULL )
  193. , SchemaEntry("ifcsymbolstyleselect",NULL )
  194. , SchemaEntry("ifcdimensionextentusage",NULL )
  195. , SchemaEntry("ifclibraryselect",NULL )
  196. , SchemaEntry("ifcsiunitname",NULL )
  197. , SchemaEntry("ifcunitenum",NULL )
  198. , SchemaEntry("ifcrotationalstiffnessmeasure",NULL )
  199. , SchemaEntry("ifcarithmeticoperatorenum",NULL )
  200. , SchemaEntry("ifcaddresstypeenum",NULL )
  201. , SchemaEntry("ifcluminousintensitymeasure",NULL )
  202. , SchemaEntry("ifcdefinedsymbolselect",NULL )
  203. , SchemaEntry("ifcenvironmentalimpactcategoryenum",NULL )
  204. , SchemaEntry("ifcelectricvoltagemeasure",NULL )
  205. , SchemaEntry("ifcpositivelengthmeasure",NULL )
  206. , SchemaEntry("ifcelectricheatertypeenum",NULL )
  207. , SchemaEntry("ifcconditioncriterionselect",NULL )
  208. , SchemaEntry("ifctextdecoration",NULL )
  209. , SchemaEntry("ifccsgselect",NULL )
  210. , SchemaEntry("ifclabel",NULL )
  211. , SchemaEntry("ifcthermalloadtypeenum",NULL )
  212. , SchemaEntry("ifcmassdensitymeasure",NULL )
  213. , SchemaEntry("ifcchangeactionenum",NULL )
  214. , SchemaEntry("ifcboolean",NULL )
  215. , SchemaEntry("ifcelectricchargemeasure",NULL )
  216. , SchemaEntry("ifcelectriccurrentenum",NULL )
  217. , SchemaEntry("ifcsurfaceside",NULL )
  218. , SchemaEntry("ifcnormalisedratiomeasure",NULL )
  219. , SchemaEntry("ifcdescriptivemeasure",NULL )
  220. , SchemaEntry("ifcunit",NULL )
  221. , SchemaEntry("ifcdoorstyleconstructionenum",NULL )
  222. , SchemaEntry("ifctimeseriesdatatypeenum",NULL )
  223. , SchemaEntry("ifcwasteterminaltypeenum",NULL )
  224. , SchemaEntry("ifcilluminancemeasure",NULL )
  225. , SchemaEntry("ifcactiontypeenum",NULL )
  226. , SchemaEntry("ifcionconcentrationmeasure",NULL )
  227. , SchemaEntry("ifcspacetypeenum",NULL )
  228. , SchemaEntry("ifcspecularhighlightselect",NULL )
  229. , SchemaEntry("ifctorquemeasure",NULL )
  230. , SchemaEntry("ifchumidifiertypeenum",NULL )
  231. , SchemaEntry("ifcdaylightsavinghour",NULL )
  232. , SchemaEntry("ifcstructuralactivityassignmentselect",NULL )
  233. , SchemaEntry("ifcbeamtypeenum",NULL )
  234. , SchemaEntry("ifcfontvariant",NULL )
  235. , SchemaEntry("ifcribplatedirectionenum",NULL )
  236. , SchemaEntry("ifcnumericmeasure",NULL )
  237. , SchemaEntry("ifcreflectancemethodenum",NULL )
  238. , SchemaEntry("ifcflowinstrumenttypeenum",NULL )
  239. , SchemaEntry("ifcdampertypeenum",NULL )
  240. , SchemaEntry("ifcmagneticfluxdensitymeasure",NULL )
  241. , SchemaEntry("ifcstackterminaltypeenum",NULL )
  242. , SchemaEntry("ifctextpath",NULL )
  243. , SchemaEntry("ifcdocumentselect",NULL )
  244. , SchemaEntry("ifcmoisturediffusivitymeasure",NULL )
  245. , SchemaEntry("ifcslabtypeenum",NULL )
  246. , SchemaEntry("ifcevaporatortypeenum",NULL )
  247. , SchemaEntry("ifcvibrationisolatortypeenum",NULL )
  248. , SchemaEntry("ifcstructuralcurvetypeenum",NULL )
  249. , SchemaEntry("ifcdataoriginenum",NULL )
  250. , SchemaEntry("ifcswitchingdevicetypeenum",NULL )
  251. , SchemaEntry("ifcdocumentstatusenum",NULL )
  252. , SchemaEntry("ifcminuteinhour",NULL )
  253. , SchemaEntry("ifcinductancemeasure",NULL )
  254. , SchemaEntry("ifcmassflowratemeasure",NULL )
  255. , SchemaEntry("ifctimemeasure",NULL )
  256. , SchemaEntry("ifcdoseequivalentmeasure",NULL )
  257. , SchemaEntry("ifccostscheduletypeenum",NULL )
  258. , SchemaEntry("ifcsanitaryterminaltypeenum",NULL )
  259. , SchemaEntry("ifcservicelifefactortypeenum",NULL )
  260. , SchemaEntry("ifcservicelifetypeenum",NULL )
  261. , SchemaEntry("ifcelectricmotortypeenum",NULL )
  262. , SchemaEntry("ifcfiresuppressionterminaltypeenum",NULL )
  263. , SchemaEntry("ifcroleenum",NULL )
  264. , SchemaEntry("ifcgeometricprojectionenum",NULL )
  265. , SchemaEntry("ifcoccupanttypeenum",NULL )
  266. , SchemaEntry("ifclightfixturetypeenum",NULL )
  267. , SchemaEntry("ifcelectriccurrentmeasure",NULL )
  268. , SchemaEntry("ifcdoorpanelpositionenum",NULL )
  269. , SchemaEntry("ifccoveringtypeenum",NULL )
  270. , SchemaEntry("ifcaheadorbehind",NULL )
  271. , SchemaEntry("ifcaxis2placement",NULL )
  272. , SchemaEntry("ifcrooftypeenum",NULL )
  273. , SchemaEntry("ifclightdistributioncurveenum",NULL )
  274. , SchemaEntry("ifcwalltypeenum",NULL )
  275. , SchemaEntry("ifcdynamicviscositymeasure",NULL )
  276. , SchemaEntry("ifcsoundpowermeasure",NULL )
  277. , SchemaEntry("ifccontextdependentmeasure",NULL )
  278. , SchemaEntry("ifcmonetarymeasure",NULL )
  279. , SchemaEntry("ifccurveoredgecurve",NULL )
  280. , SchemaEntry("ifctextalignment",NULL )
  281. , SchemaEntry("ifcsequenceenum",NULL )
  282. , SchemaEntry("ifcobjectiveenum",NULL )
  283. , SchemaEntry("ifcoutlettypeenum",NULL )
  284. , SchemaEntry("ifcstairflighttypeenum",NULL )
  285. , SchemaEntry("ifcsoundscaleenum",NULL )
  286. , SchemaEntry("ifcfantypeenum",NULL )
  287. , SchemaEntry("ifcactionsourcetypeenum",NULL )
  288. , SchemaEntry("ifcspecificheatcapacitymeasure",NULL )
  289. , SchemaEntry("ifcappliedvalueselect",NULL )
  290. , SchemaEntry("ifccurvefontorscaledcurvefontselect",NULL )
  291. , SchemaEntry("ifcfontstyle",NULL )
  292. , SchemaEntry("ifcsizeselect",NULL )
  293. , SchemaEntry("ifclayersetdirectionenum",NULL )
  294. , SchemaEntry("ifcelectriccapacitancemeasure",NULL )
  295. , SchemaEntry("ifcintegercountratemeasure",NULL )
  296. , SchemaEntry("ifccurvaturemeasure",NULL )
  297. , SchemaEntry("ifcdayinmonthnumber",NULL )
  298. , SchemaEntry("ifcdocumentconfidentialityenum",NULL )
  299. , SchemaEntry("ifcmodulusofsubgradereactionmeasure",NULL )
  300. , SchemaEntry("ifcpointorvertexpoint",NULL )
  301. , SchemaEntry("ifcthermodynamictemperaturemeasure",NULL )
  302. , SchemaEntry("ifcmonthinyearnumber",NULL )
  303. , SchemaEntry("ifcamountofsubstancemeasure",NULL )
  304. , SchemaEntry("ifcreal",NULL )
  305. , SchemaEntry("ifcsecondinminute",NULL )
  306. , SchemaEntry("ifclinearforcemeasure",NULL )
  307. , SchemaEntry("ifccablecarriersegmenttypeenum",NULL )
  308. , SchemaEntry("ifcmassperlengthmeasure",NULL )
  309. , SchemaEntry("ifcgasterminaltypeenum",NULL )
  310. , SchemaEntry("ifccontrollertypeenum",NULL )
  311. , SchemaEntry("ifcstructuralsurfacetypeenum",NULL )
  312. , SchemaEntry("ifcanalysismodeltypeenum",NULL )
  313. , SchemaEntry("ifcpumptypeenum",NULL )
  314. , SchemaEntry("ifcluminousintensitydistributionmeasure",NULL )
  315. , SchemaEntry("ifccablecarrierfittingtypeenum",NULL )
  316. , SchemaEntry("ifcproceduretypeenum",NULL )
  317. , SchemaEntry("ifcevaporativecoolertypeenum",NULL )
  318. , SchemaEntry("ifcmodulusofelasticitymeasure",NULL )
  319. , SchemaEntry("ifcflowmetertypeenum",NULL )
  320. , SchemaEntry("ifcprojectordertypeenum",NULL )
  321. , SchemaEntry("ifcductsegmenttypeenum",NULL )
  322. , SchemaEntry("ifcdistributionchamberelementtypeenum",NULL )
  323. , SchemaEntry("ifcairterminaltypeenum",NULL )
  324. , SchemaEntry("ifcnullstyle",NULL )
  325. , SchemaEntry("ifcductsilencertypeenum",NULL )
  326. , SchemaEntry("ifcfontweight",NULL )
  327. , SchemaEntry("ifcsurfaceorfacesurface",NULL )
  328. , SchemaEntry("ifcbenchmarkenum",NULL )
  329. , SchemaEntry("ifcshell",NULL )
  330. , SchemaEntry("ifcmodulusoflinearsubgradereactionmeasure",NULL )
  331. , SchemaEntry("ifcwindowstyleconstructionenum",NULL )
  332. , SchemaEntry("ifcinternalorexternalenum",NULL )
  333. , SchemaEntry("ifctrimmingpreference",NULL )
  334. , SchemaEntry("ifcenergymeasure",NULL )
  335. , SchemaEntry("ifcthermalconductivitymeasure",NULL )
  336. , SchemaEntry("ifcpowermeasure",NULL )
  337. , SchemaEntry("ifcelectricdistributionpointfunctionenum",NULL )
  338. , SchemaEntry("ifcvalvetypeenum",NULL )
  339. , SchemaEntry("ifcenergysequenceenum",NULL )
  340. , SchemaEntry("ifcmetricvalueselect",NULL )
  341. , SchemaEntry("ifclengthmeasure",NULL )
  342. , SchemaEntry("ifccoolingtowertypeenum",NULL )
  343. , SchemaEntry("ifcparametervalue",NULL )
  344. , SchemaEntry("ifccompoundplaneanglemeasure",NULL )
  345. , SchemaEntry("ifcconstraintenum",NULL )
  346. , SchemaEntry("ifcmodulusofrotationalsubgradereactionmeasure",NULL )
  347. , SchemaEntry("ifcspecularexponent",NULL )
  348. , SchemaEntry("ifcloadgrouptypeenum",NULL )
  349. , SchemaEntry("ifccolumntypeenum",NULL )
  350. , SchemaEntry("ifcmembertypeenum",NULL )
  351. , SchemaEntry("ifchourinday",NULL )
  352. , SchemaEntry("ifcheatingvaluemeasure",NULL )
  353. , SchemaEntry("ifcelementcompositionenum",NULL )
  354. , SchemaEntry("ifctimeseriesscheduletypeenum",NULL )
  355. , SchemaEntry("ifcreinforcingbarsurfaceenum",NULL )
  356. , SchemaEntry("ifckinematicviscositymeasure",NULL )
  357. , SchemaEntry("ifcphysicalorvirtualenum",NULL )
  358. , SchemaEntry("ifctextfontname",NULL )
  359. , SchemaEntry("ifcconnectiontypeenum",NULL )
  360. , SchemaEntry("ifccomplexnumber",NULL )
  361. , SchemaEntry("ifcobjectreferenceselect",NULL )
  362. , SchemaEntry("ifccooledbeamtypeenum",NULL )
  363. , SchemaEntry("ifcaccelerationmeasure",NULL )
  364. , SchemaEntry("ifcderivedmeasurevalue",NULL )
  365. , SchemaEntry("ifctexttransformation",NULL )
  366. , SchemaEntry("ifcworkcontroltypeenum",NULL )
  367. , SchemaEntry("ifcderivedunitenum",NULL )
  368. , SchemaEntry("ifcsiprefix",NULL )
  369. , SchemaEntry("ifcroot",&STEP::ObjectHelper<IfcRoot,4>::Construct )
  370. , SchemaEntry("ifcrelationship",&STEP::ObjectHelper<IfcRelationship,0>::Construct )
  371. , SchemaEntry("ifcrelconnects",&STEP::ObjectHelper<IfcRelConnects,0>::Construct )
  372. , SchemaEntry("ifcrelreferencedinspatialstructure",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  373. , SchemaEntry("ifcrepresentationitem",&STEP::ObjectHelper<IfcRepresentationItem,0>::Construct )
  374. , SchemaEntry("ifcgeometricrepresentationitem",&STEP::ObjectHelper<IfcGeometricRepresentationItem,0>::Construct )
  375. , SchemaEntry("ifccurve",&STEP::ObjectHelper<IfcCurve,0>::Construct )
  376. , SchemaEntry("ifcboundedcurve",&STEP::ObjectHelper<IfcBoundedCurve,0>::Construct )
  377. , SchemaEntry("ifcproperty",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  378. , SchemaEntry("ifcsimpleproperty",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  379. , SchemaEntry("ifcpropertyreferencevalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  380. , SchemaEntry("ifcpropertydefinition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  381. , SchemaEntry("ifcpropertysetdefinition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  382. , SchemaEntry("ifcspacethermalloadproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  383. , SchemaEntry("ifcobjectdefinition",&STEP::ObjectHelper<IfcObjectDefinition,0>::Construct )
  384. , SchemaEntry("ifcobject",&STEP::ObjectHelper<IfcObject,1>::Construct )
  385. , SchemaEntry("ifccontrol",&STEP::ObjectHelper<IfcControl,0>::Construct )
  386. , SchemaEntry("ifctimeseriesschedule",&STEP::ObjectHelper<IfcTimeSeriesSchedule,3>::Construct )
  387. , SchemaEntry("ifcsolidmodel",&STEP::ObjectHelper<IfcSolidModel,0>::Construct )
  388. , SchemaEntry("ifcsweptareasolid",&STEP::ObjectHelper<IfcSweptAreaSolid,2>::Construct )
  389. , SchemaEntry("ifcextrudedareasolid",&STEP::ObjectHelper<IfcExtrudedAreaSolid,2>::Construct )
  390. , SchemaEntry("ifcconditioncriterion",&STEP::ObjectHelper<IfcConditionCriterion,2>::Construct )
  391. , SchemaEntry("ifcrelconnectsstructuralelement",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  392. , SchemaEntry("ifctypeobject",&STEP::ObjectHelper<IfcTypeObject,2>::Construct )
  393. , SchemaEntry("ifctypeproduct",&STEP::ObjectHelper<IfcTypeProduct,2>::Construct )
  394. , SchemaEntry("ifcelementtype",&STEP::ObjectHelper<IfcElementType,1>::Construct )
  395. , SchemaEntry("ifcdistributionelementtype",&STEP::ObjectHelper<IfcDistributionElementType,0>::Construct )
  396. , SchemaEntry("ifcdistributionflowelementtype",&STEP::ObjectHelper<IfcDistributionFlowElementType,0>::Construct )
  397. , SchemaEntry("ifcflowtreatmentdevicetype",&STEP::ObjectHelper<IfcFlowTreatmentDeviceType,0>::Construct )
  398. , SchemaEntry("ifcductsilencertype",&STEP::ObjectHelper<IfcDuctSilencerType,1>::Construct )
  399. , SchemaEntry("ifcproduct",&STEP::ObjectHelper<IfcProduct,2>::Construct )
  400. , SchemaEntry("ifcelement",&STEP::ObjectHelper<IfcElement,1>::Construct )
  401. , SchemaEntry("ifcelementcomponent",&STEP::ObjectHelper<IfcElementComponent,0>::Construct )
  402. , SchemaEntry("ifcdiscreteaccessory",&STEP::ObjectHelper<IfcDiscreteAccessory,0>::Construct )
  403. , SchemaEntry("ifcdistributionelement",&STEP::ObjectHelper<IfcDistributionElement,0>::Construct )
  404. , SchemaEntry("ifcdistributionflowelement",&STEP::ObjectHelper<IfcDistributionFlowElement,0>::Construct )
  405. , SchemaEntry("ifcflowcontroller",&STEP::ObjectHelper<IfcFlowController,0>::Construct )
  406. , SchemaEntry("ifcelectricdistributionpoint",&STEP::ObjectHelper<IfcElectricDistributionPoint,2>::Construct )
  407. , SchemaEntry("ifcexternalreference",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  408. , SchemaEntry("ifcclassificationreference",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  409. , SchemaEntry("ifcmateriallayer",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  410. , SchemaEntry("ifcconnectiongeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  411. , SchemaEntry("ifcconnectionpointgeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  412. , SchemaEntry("ifcconnectionpointeccentricity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  413. , SchemaEntry("ifctextliteral",&STEP::ObjectHelper<IfcTextLiteral,3>::Construct )
  414. , SchemaEntry("ifctextliteralwithextent",&STEP::ObjectHelper<IfcTextLiteralWithExtent,2>::Construct )
  415. , SchemaEntry("ifctextstylewithboxcharacteristics",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  416. , SchemaEntry("ifcvector",&STEP::ObjectHelper<IfcVector,2>::Construct )
  417. , SchemaEntry("ifcrelassociates",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  418. , SchemaEntry("ifcrelassociatesdocument",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  419. , SchemaEntry("ifcbuildingelement",&STEP::ObjectHelper<IfcBuildingElement,0>::Construct )
  420. , SchemaEntry("ifcwindow",&STEP::ObjectHelper<IfcWindow,2>::Construct )
  421. , SchemaEntry("ifccovering",&STEP::ObjectHelper<IfcCovering,1>::Construct )
  422. , SchemaEntry("ifcrelassigns",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  423. , SchemaEntry("ifcrelassignstoactor",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  424. , SchemaEntry("ifcreloccupiesspaces",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  425. , SchemaEntry("ifcappliedvaluerelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  426. , SchemaEntry("ifccsgprimitive3d",&STEP::ObjectHelper<IfcCsgPrimitive3D,1>::Construct )
  427. , SchemaEntry("ifcrightcircularcone",&STEP::ObjectHelper<IfcRightCircularCone,2>::Construct )
  428. , SchemaEntry("ifcdimensionalexponents",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  429. , SchemaEntry("ifcstructuralitem",&STEP::ObjectHelper<IfcStructuralItem,0>::Construct )
  430. , SchemaEntry("ifcstructuralmember",&STEP::ObjectHelper<IfcStructuralMember,0>::Construct )
  431. , SchemaEntry("ifcstructuralsurfacemember",&STEP::ObjectHelper<IfcStructuralSurfaceMember,2>::Construct )
  432. , SchemaEntry("ifcstructuralsurfacemembervarying",&STEP::ObjectHelper<IfcStructuralSurfaceMemberVarying,2>::Construct )
  433. , SchemaEntry("ifcbuildingelementtype",&STEP::ObjectHelper<IfcBuildingElementType,0>::Construct )
  434. , SchemaEntry("ifcrailingtype",&STEP::ObjectHelper<IfcRailingType,1>::Construct )
  435. , SchemaEntry("ifccolourspecification",&STEP::ObjectHelper<IfcColourSpecification,1>::Construct )
  436. , SchemaEntry("ifcbsplinecurve",&STEP::ObjectHelper<IfcBSplineCurve,5>::Construct )
  437. , SchemaEntry("ifcbeziercurve",&STEP::ObjectHelper<IfcBezierCurve,0>::Construct )
  438. , SchemaEntry("ifcrationalbeziercurve",&STEP::ObjectHelper<IfcRationalBezierCurve,1>::Construct )
  439. , SchemaEntry("ifcflowmovingdevice",&STEP::ObjectHelper<IfcFlowMovingDevice,0>::Construct )
  440. , SchemaEntry("ifconedirectionrepeatfactor",&STEP::ObjectHelper<IfcOneDirectionRepeatFactor,1>::Construct )
  441. , SchemaEntry("ifctwodirectionrepeatfactor",&STEP::ObjectHelper<IfcTwoDirectionRepeatFactor,1>::Construct )
  442. , SchemaEntry("ifccurtainwalltype",&STEP::ObjectHelper<IfcCurtainWallType,1>::Construct )
  443. , SchemaEntry("ifcflowstoragedevicetype",&STEP::ObjectHelper<IfcFlowStorageDeviceType,0>::Construct )
  444. , SchemaEntry("ifctanktype",&STEP::ObjectHelper<IfcTankType,1>::Construct )
  445. , SchemaEntry("ifcgroup",&STEP::ObjectHelper<IfcGroup,0>::Construct )
  446. , SchemaEntry("ifcsystem",&STEP::ObjectHelper<IfcSystem,0>::Construct )
  447. , SchemaEntry("ifcstructuralanalysismodel",&STEP::ObjectHelper<IfcStructuralAnalysisModel,4>::Construct )
  448. , SchemaEntry("ifcstructuralconnection",&STEP::ObjectHelper<IfcStructuralConnection,1>::Construct )
  449. , SchemaEntry("ifcstructuralsurfaceconnection",&STEP::ObjectHelper<IfcStructuralSurfaceConnection,0>::Construct )
  450. , SchemaEntry("ifcsurfacetexture",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  451. , SchemaEntry("ifcpixeltexture",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  452. , SchemaEntry("ifcmappeditem",&STEP::ObjectHelper<IfcMappedItem,2>::Construct )
  453. , SchemaEntry("ifcenergyconversiondevicetype",&STEP::ObjectHelper<IfcEnergyConversionDeviceType,0>::Construct )
  454. , SchemaEntry("ifccoiltype",&STEP::ObjectHelper<IfcCoilType,1>::Construct )
  455. , SchemaEntry("ifcpoint",&STEP::ObjectHelper<IfcPoint,0>::Construct )
  456. , SchemaEntry("ifcpointonsurface",&STEP::ObjectHelper<IfcPointOnSurface,3>::Construct )
  457. , SchemaEntry("ifcconnectionportgeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  458. , SchemaEntry("ifcmateriallayerset",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  459. , SchemaEntry("ifcproject",&STEP::ObjectHelper<IfcProject,4>::Construct )
  460. , SchemaEntry("ifcpredefineditem",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  461. , SchemaEntry("ifcpredefinedsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  462. , SchemaEntry("ifcactor",&STEP::ObjectHelper<IfcActor,1>::Construct )
  463. , SchemaEntry("ifcoccupant",&STEP::ObjectHelper<IfcOccupant,1>::Construct )
  464. , SchemaEntry("ifcrightcircularcylinder",&STEP::ObjectHelper<IfcRightCircularCylinder,2>::Construct )
  465. , SchemaEntry("ifchumidifiertype",&STEP::ObjectHelper<IfcHumidifierType,1>::Construct )
  466. , SchemaEntry("ifcprofiledef",&STEP::ObjectHelper<IfcProfileDef,2>::Construct )
  467. , SchemaEntry("ifccompositeprofiledef",&STEP::ObjectHelper<IfcCompositeProfileDef,2>::Construct )
  468. , SchemaEntry("ifcchillertype",&STEP::ObjectHelper<IfcChillerType,1>::Construct )
  469. , SchemaEntry("ifcpersonandorganization",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  470. , SchemaEntry("ifccompositecurve",&STEP::ObjectHelper<IfcCompositeCurve,2>::Construct )
  471. , SchemaEntry("ifc2dcompositecurve",&STEP::ObjectHelper<Ifc2DCompositeCurve,0>::Construct )
  472. , SchemaEntry("ifcmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  473. , SchemaEntry("ifcthermalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  474. , SchemaEntry("ifcfastener",&STEP::ObjectHelper<IfcFastener,0>::Construct )
  475. , SchemaEntry("ifcmechanicalfastener",&STEP::ObjectHelper<IfcMechanicalFastener,2>::Construct )
  476. , SchemaEntry("ifcfluidflowproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  477. , SchemaEntry("ifcplacement",&STEP::ObjectHelper<IfcPlacement,1>::Construct )
  478. , SchemaEntry("ifcaxis1placement",&STEP::ObjectHelper<IfcAxis1Placement,1>::Construct )
  479. , SchemaEntry("ifccartesiantransformationoperator",&STEP::ObjectHelper<IfcCartesianTransformationOperator,4>::Construct )
  480. , SchemaEntry("ifcflowcontrollertype",&STEP::ObjectHelper<IfcFlowControllerType,0>::Construct )
  481. , SchemaEntry("ifcswitchingdevicetype",&STEP::ObjectHelper<IfcSwitchingDeviceType,1>::Construct )
  482. , SchemaEntry("ifcrelcoversbldgelements",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  483. , SchemaEntry("ifcgeometricset",&STEP::ObjectHelper<IfcGeometricSet,1>::Construct )
  484. , SchemaEntry("ifcgeometriccurveset",&STEP::ObjectHelper<IfcGeometricCurveSet,0>::Construct )
  485. , SchemaEntry("ifcflowsegmenttype",&STEP::ObjectHelper<IfcFlowSegmentType,0>::Construct )
  486. , SchemaEntry("ifccablecarriersegmenttype",&STEP::ObjectHelper<IfcCableCarrierSegmentType,1>::Construct )
  487. , SchemaEntry("ifcannotationsurface",&STEP::ObjectHelper<IfcAnnotationSurface,2>::Construct )
  488. , SchemaEntry("ifcpredefinedcolour",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  489. , SchemaEntry("ifcdraughtingpredefinedcolour",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  490. , SchemaEntry("ifctopologicalrepresentationitem",&STEP::ObjectHelper<IfcTopologicalRepresentationItem,0>::Construct )
  491. , SchemaEntry("ifcloop",&STEP::ObjectHelper<IfcLoop,0>::Construct )
  492. , SchemaEntry("ifcpolyloop",&STEP::ObjectHelper<IfcPolyLoop,1>::Construct )
  493. , SchemaEntry("ifcconnectedfaceset",&STEP::ObjectHelper<IfcConnectedFaceSet,1>::Construct )
  494. , SchemaEntry("ifcopenshell",&STEP::ObjectHelper<IfcOpenShell,0>::Construct )
  495. , SchemaEntry("ifcrepresentationcontext",&STEP::ObjectHelper<IfcRepresentationContext,2>::Construct )
  496. , SchemaEntry("ifcrelassignstoproduct",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  497. , SchemaEntry("ifcnamedunit",&STEP::ObjectHelper<IfcNamedUnit,2>::Construct )
  498. , SchemaEntry("ifcrelassignstoprocess",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  499. , SchemaEntry("ifcpredefinedcurvefont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  500. , SchemaEntry("ifcrepresentation",&STEP::ObjectHelper<IfcRepresentation,4>::Construct )
  501. , SchemaEntry("ifclightsource",&STEP::ObjectHelper<IfcLightSource,4>::Construct )
  502. , SchemaEntry("ifcrelconnectsstructuralmember",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  503. , SchemaEntry("ifcrelconnectswitheccentricity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  504. , SchemaEntry("ifcprojectorderrecord",&STEP::ObjectHelper<IfcProjectOrderRecord,2>::Construct )
  505. , SchemaEntry("ifcgridaxis",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  506. , SchemaEntry("ifcrelaxation",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  507. , SchemaEntry("ifcapplication",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  508. , SchemaEntry("ifcpresentationlayerassignment",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  509. , SchemaEntry("ifcpresentationlayerwithstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  510. , SchemaEntry("ifcmateriallayersetusage",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  511. , SchemaEntry("ifcspaceprogram",&STEP::ObjectHelper<IfcSpaceProgram,5>::Construct )
  512. , SchemaEntry("ifcdraughtingcallout",&STEP::ObjectHelper<IfcDraughtingCallout,1>::Construct )
  513. , SchemaEntry("ifcdimensioncurvedirectedcallout",&STEP::ObjectHelper<IfcDimensionCurveDirectedCallout,0>::Construct )
  514. , SchemaEntry("ifcdiameterdimension",&STEP::ObjectHelper<IfcDiameterDimension,0>::Construct )
  515. , SchemaEntry("ifcstyleditem",&STEP::ObjectHelper<IfcStyledItem,3>::Construct )
  516. , SchemaEntry("ifcannotationoccurrence",&STEP::ObjectHelper<IfcAnnotationOccurrence,0>::Construct )
  517. , SchemaEntry("ifcannotationtextoccurrence",&STEP::ObjectHelper<IfcAnnotationTextOccurrence,0>::Construct )
  518. , SchemaEntry("ifcwall",&STEP::ObjectHelper<IfcWall,0>::Construct )
  519. , SchemaEntry("ifcirregulartimeseriesvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  520. , SchemaEntry("ifcprocess",&STEP::ObjectHelper<IfcProcess,0>::Construct )
  521. , SchemaEntry("ifctask",&STEP::ObjectHelper<IfcTask,5>::Construct )
  522. , SchemaEntry("ifcmove",&STEP::ObjectHelper<IfcMove,3>::Construct )
  523. , SchemaEntry("ifccolumn",&STEP::ObjectHelper<IfcColumn,0>::Construct )
  524. , SchemaEntry("ifcwallstandardcase",&STEP::ObjectHelper<IfcWallStandardCase,0>::Construct )
  525. , SchemaEntry("ifcedge",&STEP::ObjectHelper<IfcEdge,2>::Construct )
  526. , SchemaEntry("ifcmanifoldsolidbrep",&STEP::ObjectHelper<IfcManifoldSolidBrep,1>::Construct )
  527. , SchemaEntry("ifcfacetedbrepwithvoids",&STEP::ObjectHelper<IfcFacetedBrepWithVoids,1>::Construct )
  528. , SchemaEntry("ifcphysicalquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  529. , SchemaEntry("ifcphysicalcomplexquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  530. , SchemaEntry("ifcrelassociatesappliedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  531. , SchemaEntry("ifcshapemodel",&STEP::ObjectHelper<IfcShapeModel,0>::Construct )
  532. , SchemaEntry("ifctopologyrepresentation",&STEP::ObjectHelper<IfcTopologyRepresentation,0>::Construct )
  533. , SchemaEntry("ifctimeseriesvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  534. , SchemaEntry("ifcsoundvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  535. , SchemaEntry("ifcreldefines",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  536. , SchemaEntry("ifcreldefinesbyproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  537. , SchemaEntry("ifcstructuralactivity",&STEP::ObjectHelper<IfcStructuralActivity,2>::Construct )
  538. , SchemaEntry("ifcconnectionsurfacegeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  539. , SchemaEntry("ifcownerhistory",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  540. , SchemaEntry("ifcparameterizedprofiledef",&STEP::ObjectHelper<IfcParameterizedProfileDef,1>::Construct )
  541. , SchemaEntry("ifccircleprofiledef",&STEP::ObjectHelper<IfcCircleProfileDef,1>::Construct )
  542. , SchemaEntry("ifccirclehollowprofiledef",&STEP::ObjectHelper<IfcCircleHollowProfileDef,1>::Construct )
  543. , SchemaEntry("ifccranerailfshapeprofiledef",&STEP::ObjectHelper<IfcCraneRailFShapeProfileDef,9>::Construct )
  544. , SchemaEntry("ifcport",&STEP::ObjectHelper<IfcPort,0>::Construct )
  545. , SchemaEntry("ifcdistributionport",&STEP::ObjectHelper<IfcDistributionPort,1>::Construct )
  546. , SchemaEntry("ifcflowterminaltype",&STEP::ObjectHelper<IfcFlowTerminalType,0>::Construct )
  547. , SchemaEntry("ifcgasterminaltype",&STEP::ObjectHelper<IfcGasTerminalType,1>::Construct )
  548. , SchemaEntry("ifcannotationcurveoccurrence",&STEP::ObjectHelper<IfcAnnotationCurveOccurrence,0>::Construct )
  549. , SchemaEntry("ifcprojectioncurve",&STEP::ObjectHelper<IfcProjectionCurve,0>::Construct )
  550. , SchemaEntry("ifcelectricgeneratortype",&STEP::ObjectHelper<IfcElectricGeneratorType,1>::Construct )
  551. , SchemaEntry("ifcrevolvedareasolid",&STEP::ObjectHelper<IfcRevolvedAreaSolid,2>::Construct )
  552. , SchemaEntry("ifctimeseriesreferencerelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  553. , SchemaEntry("ifccartesiantransformationoperator3d",&STEP::ObjectHelper<IfcCartesianTransformationOperator3D,1>::Construct )
  554. , SchemaEntry("ifcbuildingelementproxytype",&STEP::ObjectHelper<IfcBuildingElementProxyType,1>::Construct )
  555. , SchemaEntry("ifcrelcoversspaces",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  556. , SchemaEntry("ifcflowmovingdevicetype",&STEP::ObjectHelper<IfcFlowMovingDeviceType,0>::Construct )
  557. , SchemaEntry("ifcpumptype",&STEP::ObjectHelper<IfcPumpType,1>::Construct )
  558. , SchemaEntry("ifcworkcontrol",&STEP::ObjectHelper<IfcWorkControl,10>::Construct )
  559. , SchemaEntry("ifcworkplan",&STEP::ObjectHelper<IfcWorkPlan,0>::Construct )
  560. , SchemaEntry("ifcarbitraryopenprofiledef",&STEP::ObjectHelper<IfcArbitraryOpenProfileDef,1>::Construct )
  561. , SchemaEntry("ifccenterlineprofiledef",&STEP::ObjectHelper<IfcCenterLineProfileDef,1>::Construct )
  562. , SchemaEntry("ifcconic",&STEP::ObjectHelper<IfcConic,1>::Construct )
  563. , SchemaEntry("ifcflowfittingtype",&STEP::ObjectHelper<IfcFlowFittingType,0>::Construct )
  564. , SchemaEntry("ifcpipefittingtype",&STEP::ObjectHelper<IfcPipeFittingType,1>::Construct )
  565. , SchemaEntry("ifcrelconnectsporttoelement",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  566. , SchemaEntry("ifcushapeprofiledef",&STEP::ObjectHelper<IfcUShapeProfileDef,8>::Construct )
  567. , SchemaEntry("ifcpermit",&STEP::ObjectHelper<IfcPermit,1>::Construct )
  568. , SchemaEntry("ifccsgsolid",&STEP::ObjectHelper<IfcCsgSolid,1>::Construct )
  569. , SchemaEntry("ifcinventory",&STEP::ObjectHelper<IfcInventory,6>::Construct )
  570. , SchemaEntry("ifcfeatureelement",&STEP::ObjectHelper<IfcFeatureElement,0>::Construct )
  571. , SchemaEntry("ifcfeatureelementsubtraction",&STEP::ObjectHelper<IfcFeatureElementSubtraction,0>::Construct )
  572. , SchemaEntry("ifcedgefeature",&STEP::ObjectHelper<IfcEdgeFeature,1>::Construct )
  573. , SchemaEntry("ifcroundededgefeature",&STEP::ObjectHelper<IfcRoundedEdgeFeature,1>::Construct )
  574. , SchemaEntry("ifcstructuralconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  575. , SchemaEntry("ifcfailureconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  576. , SchemaEntry("ifchalfspacesolid",&STEP::ObjectHelper<IfcHalfSpaceSolid,2>::Construct )
  577. , SchemaEntry("ifcrelconnectselements",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  578. , SchemaEntry("ifcrelconnectspathelements",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  579. , SchemaEntry("ifcspatialstructureelement",&STEP::ObjectHelper<IfcSpatialStructureElement,2>::Construct )
  580. , SchemaEntry("ifcbuilding",&STEP::ObjectHelper<IfcBuilding,3>::Construct )
  581. , SchemaEntry("ifcrectangleprofiledef",&STEP::ObjectHelper<IfcRectangleProfileDef,2>::Construct )
  582. , SchemaEntry("ifcrectanglehollowprofiledef",&STEP::ObjectHelper<IfcRectangleHollowProfileDef,3>::Construct )
  583. , SchemaEntry("ifcannotationfillareaoccurrence",&STEP::ObjectHelper<IfcAnnotationFillAreaOccurrence,2>::Construct )
  584. , SchemaEntry("ifcclosedshell",&STEP::ObjectHelper<IfcClosedShell,0>::Construct )
  585. , SchemaEntry("ifcapprovalpropertyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  586. , SchemaEntry("ifccurrencyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  587. , SchemaEntry("ifcfeatureelementaddition",&STEP::ObjectHelper<IfcFeatureElementAddition,0>::Construct )
  588. , SchemaEntry("ifcrelassignstocontrol",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  589. , SchemaEntry("ifclightfixturetype",&STEP::ObjectHelper<IfcLightFixtureType,1>::Construct )
  590. , SchemaEntry("ifcproductrepresentation",&STEP::ObjectHelper<IfcProductRepresentation,3>::Construct )
  591. , SchemaEntry("ifcprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  592. , SchemaEntry("ifcribplateprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  593. , SchemaEntry("ifcstructuralload",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  594. , SchemaEntry("ifcstructuralloadstatic",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  595. , SchemaEntry("ifcstructuralloadsingledisplacement",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  596. , SchemaEntry("ifcstructuralloadsingledisplacementdistortion",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  597. , SchemaEntry("ifcrelconnectsstructuralactivity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  598. , SchemaEntry("ifccablesegmenttype",&STEP::ObjectHelper<IfcCableSegmentType,1>::Construct )
  599. , SchemaEntry("ifcedgecurve",&STEP::ObjectHelper<IfcEdgeCurve,2>::Construct )
  600. , SchemaEntry("ifcfurnishingelementtype",&STEP::ObjectHelper<IfcFurnishingElementType,0>::Construct )
  601. , SchemaEntry("ifcsystemfurnitureelementtype",&STEP::ObjectHelper<IfcSystemFurnitureElementType,0>::Construct )
  602. , SchemaEntry("ifclineardimension",&STEP::ObjectHelper<IfcLinearDimension,0>::Construct )
  603. , SchemaEntry("ifcstair",&STEP::ObjectHelper<IfcStair,1>::Construct )
  604. , SchemaEntry("ifcelementquantity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  605. , SchemaEntry("ifcbuildingelementcomponent",&STEP::ObjectHelper<IfcBuildingElementComponent,0>::Construct )
  606. , SchemaEntry("ifcbuildingelementpart",&STEP::ObjectHelper<IfcBuildingElementPart,0>::Construct )
  607. , SchemaEntry("ifcdocumentelectronicformat",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  608. , SchemaEntry("ifcface",&STEP::ObjectHelper<IfcFace,1>::Construct )
  609. , SchemaEntry("ifcfacesurface",&STEP::ObjectHelper<IfcFaceSurface,2>::Construct )
  610. , SchemaEntry("ifcreldecomposes",&STEP::ObjectHelper<IfcRelDecomposes,2>::Construct )
  611. , SchemaEntry("ifcpredefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  612. , SchemaEntry("ifcdraughtingpredefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  613. , SchemaEntry("ifcdimensioncurve",&STEP::ObjectHelper<IfcDimensionCurve,0>::Construct )
  614. , SchemaEntry("ifcreferencesvaluedocument",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  615. , SchemaEntry("ifcpropertyset",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  616. , SchemaEntry("ifcdraughtingpredefinedcurvefont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  617. , SchemaEntry("ifcbeam",&STEP::ObjectHelper<IfcBeam,0>::Construct )
  618. , SchemaEntry("ifccolumntype",&STEP::ObjectHelper<IfcColumnType,1>::Construct )
  619. , SchemaEntry("ifcvertexbasedtexturemap",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  620. , SchemaEntry("ifcairterminaltype",&STEP::ObjectHelper<IfcAirTerminalType,1>::Construct )
  621. , SchemaEntry("ifcrelassociatesclassification",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  622. , SchemaEntry("ifcprojectorder",&STEP::ObjectHelper<IfcProjectOrder,3>::Construct )
  623. , SchemaEntry("ifcsectionedspine",&STEP::ObjectHelper<IfcSectionedSpine,3>::Construct )
  624. , SchemaEntry("ifcheatexchangertype",&STEP::ObjectHelper<IfcHeatExchangerType,1>::Construct )
  625. , SchemaEntry("ifclshapeprofiledef",&STEP::ObjectHelper<IfcLShapeProfileDef,8>::Construct )
  626. , SchemaEntry("ifccooledbeamtype",&STEP::ObjectHelper<IfcCooledBeamType,1>::Construct )
  627. , SchemaEntry("ifcboundarycondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  628. , SchemaEntry("ifcboundarynodecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  629. , SchemaEntry("ifcboundarynodeconditionwarping",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  630. , SchemaEntry("ifclibraryreference",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  631. , SchemaEntry("ifcpropertylistvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  632. , SchemaEntry("ifcunitassignment",&STEP::ObjectHelper<IfcUnitAssignment,1>::Construct )
  633. , SchemaEntry("ifcdistributionchamberelement",&STEP::ObjectHelper<IfcDistributionChamberElement,0>::Construct )
  634. , SchemaEntry("ifcresource",&STEP::ObjectHelper<IfcResource,0>::Construct )
  635. , SchemaEntry("ifcconstructionresource",&STEP::ObjectHelper<IfcConstructionResource,4>::Construct )
  636. , SchemaEntry("ifcsubcontractresource",&STEP::ObjectHelper<IfcSubContractResource,2>::Construct )
  637. , SchemaEntry("ifcdoorpanelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  638. , SchemaEntry("ifczshapeprofiledef",&STEP::ObjectHelper<IfcZShapeProfileDef,6>::Construct )
  639. , SchemaEntry("ifcconstraint",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  640. , SchemaEntry("ifcobjective",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  641. , SchemaEntry("ifcelectricmotortype",&STEP::ObjectHelper<IfcElectricMotorType,1>::Construct )
  642. , SchemaEntry("ifcscheduletimecontrol",&STEP::ObjectHelper<IfcScheduleTimeControl,18>::Construct )
  643. , SchemaEntry("ifcspace",&STEP::ObjectHelper<IfcSpace,2>::Construct )
  644. , SchemaEntry("ifcsurface",&STEP::ObjectHelper<IfcSurface,0>::Construct )
  645. , SchemaEntry("ifcboundedsurface",&STEP::ObjectHelper<IfcBoundedSurface,0>::Construct )
  646. , SchemaEntry("ifcrectangulartrimmedsurface",&STEP::ObjectHelper<IfcRectangularTrimmedSurface,7>::Construct )
  647. , SchemaEntry("ifcflowstoragedevice",&STEP::ObjectHelper<IfcFlowStorageDevice,0>::Construct )
  648. , SchemaEntry("ifcmetric",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  649. , SchemaEntry("ifcrelcontainedinspatialstructure",&STEP::ObjectHelper<IfcRelContainedInSpatialStructure,2>::Construct )
  650. , SchemaEntry("ifcdocumentinformation",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  651. , SchemaEntry("ifcarbitraryclosedprofiledef",&STEP::ObjectHelper<IfcArbitraryClosedProfileDef,1>::Construct )
  652. , SchemaEntry("ifcpath",&STEP::ObjectHelper<IfcPath,1>::Construct )
  653. , SchemaEntry("ifcfurniturestandard",&STEP::ObjectHelper<IfcFurnitureStandard,0>::Construct )
  654. , SchemaEntry("ifcstructuralaction",&STEP::ObjectHelper<IfcStructuralAction,2>::Construct )
  655. , SchemaEntry("ifcstructuralplanaraction",&STEP::ObjectHelper<IfcStructuralPlanarAction,1>::Construct )
  656. , SchemaEntry("ifcstructuralplanaractionvarying",&STEP::ObjectHelper<IfcStructuralPlanarActionVarying,2>::Construct )
  657. , SchemaEntry("ifcelectrictimecontroltype",&STEP::ObjectHelper<IfcElectricTimeControlType,1>::Construct )
  658. , SchemaEntry("ifcconversionbasedunit",&STEP::ObjectHelper<IfcConversionBasedUnit,2>::Construct )
  659. , SchemaEntry("ifcpolyline",&STEP::ObjectHelper<IfcPolyline,1>::Construct )
  660. , SchemaEntry("ifcevaporatortype",&STEP::ObjectHelper<IfcEvaporatorType,1>::Construct )
  661. , SchemaEntry("ifcsoundproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  662. , SchemaEntry("ifccolourrgb",&STEP::ObjectHelper<IfcColourRgb,3>::Construct )
  663. , SchemaEntry("ifcequipmentstandard",&STEP::ObjectHelper<IfcEquipmentStandard,0>::Construct )
  664. , SchemaEntry("ifctransformertype",&STEP::ObjectHelper<IfcTransformerType,1>::Construct )
  665. , SchemaEntry("ifcelementcomponenttype",&STEP::ObjectHelper<IfcElementComponentType,0>::Construct )
  666. , SchemaEntry("ifcdiscreteaccessorytype",&STEP::ObjectHelper<IfcDiscreteAccessoryType,0>::Construct )
  667. , SchemaEntry("ifcvibrationisolatortype",&STEP::ObjectHelper<IfcVibrationIsolatorType,1>::Construct )
  668. , SchemaEntry("ifcsweptdisksolid",&STEP::ObjectHelper<IfcSweptDiskSolid,5>::Construct )
  669. , SchemaEntry("ifclibraryinformation",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  670. , SchemaEntry("ifcwaterproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  671. , SchemaEntry("ifctimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  672. , SchemaEntry("ifcpresentationstyle",&STEP::ObjectHelper<IfcPresentationStyle,1>::Construct )
  673. , SchemaEntry("ifccurvestyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  674. , SchemaEntry("ifccshapeprofiledef",&STEP::ObjectHelper<IfcCShapeProfileDef,6>::Construct )
  675. , SchemaEntry("ifcfillareastylehatching",&STEP::ObjectHelper<IfcFillAreaStyleHatching,5>::Construct )
  676. , SchemaEntry("ifclocaltime",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  677. , SchemaEntry("ifcsite",&STEP::ObjectHelper<IfcSite,5>::Construct )
  678. , SchemaEntry("ifcsiunit",&STEP::ObjectHelper<IfcSIUnit,2>::Construct )
  679. , SchemaEntry("ifcreinforcementbarproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  680. , SchemaEntry("ifcphysicalsimplequantity",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  681. , SchemaEntry("ifcquantityweight",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  682. , SchemaEntry("ifcperson",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  683. , SchemaEntry("ifctransportelement",&STEP::ObjectHelper<IfcTransportElement,3>::Construct )
  684. , SchemaEntry("ifcslippageconnectioncondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  685. , SchemaEntry("ifcpropertyenumeratedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  686. , SchemaEntry("ifccomplexproperty",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  687. , SchemaEntry("ifcstructuralloadlinearforce",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  688. , SchemaEntry("ifcsectionreinforcementproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  689. , SchemaEntry("ifcquantityarea",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  690. , SchemaEntry("ifcapprovalrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  691. , SchemaEntry("ifcgrid",&STEP::ObjectHelper<IfcGrid,3>::Construct )
  692. , SchemaEntry("ifccurveboundedplane",&STEP::ObjectHelper<IfcCurveBoundedPlane,3>::Construct )
  693. , SchemaEntry("ifctexturevertex",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  694. , SchemaEntry("ifcfacebasedsurfacemodel",&STEP::ObjectHelper<IfcFaceBasedSurfaceModel,1>::Construct )
  695. , SchemaEntry("ifcstructuralloadtemperature",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  696. , SchemaEntry("ifcdraughtingcalloutrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  697. , SchemaEntry("ifcreldefinesbytype",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  698. , SchemaEntry("ifcannotationsymboloccurrence",&STEP::ObjectHelper<IfcAnnotationSymbolOccurrence,0>::Construct )
  699. , SchemaEntry("ifcaxis2placement3d",&STEP::ObjectHelper<IfcAxis2Placement3D,2>::Construct )
  700. , SchemaEntry("ifcramp",&STEP::ObjectHelper<IfcRamp,1>::Construct )
  701. , SchemaEntry("ifclaborresource",&STEP::ObjectHelper<IfcLaborResource,1>::Construct )
  702. , SchemaEntry("ifcrelschedulescostitems",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  703. , SchemaEntry("ifccartesiantransformationoperator3dnonuniform",&STEP::ObjectHelper<IfcCartesianTransformationOperator3DnonUniform,2>::Construct )
  704. , SchemaEntry("ifcrelprojectselement",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  705. , SchemaEntry("ifcfacebound",&STEP::ObjectHelper<IfcFaceBound,2>::Construct )
  706. , SchemaEntry("ifcfaceouterbound",&STEP::ObjectHelper<IfcFaceOuterBound,0>::Construct )
  707. , SchemaEntry("ifcmeasurewithunit",&STEP::ObjectHelper<IfcMeasureWithUnit,2>::Construct )
  708. , SchemaEntry("ifcclassificationnotation",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  709. , SchemaEntry("ifcsectionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  710. , SchemaEntry("ifcstructuralreaction",&STEP::ObjectHelper<IfcStructuralReaction,0>::Construct )
  711. , SchemaEntry("ifcstructuralpointreaction",&STEP::ObjectHelper<IfcStructuralPointReaction,0>::Construct )
  712. , SchemaEntry("ifcdistributioncontrolelementtype",&STEP::ObjectHelper<IfcDistributionControlElementType,0>::Construct )
  713. , SchemaEntry("ifcactuatortype",&STEP::ObjectHelper<IfcActuatorType,1>::Construct )
  714. , SchemaEntry("ifcmechanicalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  715. , SchemaEntry("ifcmechanicalconcretematerialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  716. , SchemaEntry("ifcishapeprofiledef",&STEP::ObjectHelper<IfcIShapeProfileDef,5>::Construct )
  717. , SchemaEntry("ifcasymmetricishapeprofiledef",&STEP::ObjectHelper<IfcAsymmetricIShapeProfileDef,4>::Construct )
  718. , SchemaEntry("ifcmaterialdefinitionrepresentation",&STEP::ObjectHelper<IfcMaterialDefinitionRepresentation,1>::Construct )
  719. , SchemaEntry("ifcunitaryequipmenttype",&STEP::ObjectHelper<IfcUnitaryEquipmentType,1>::Construct )
  720. , SchemaEntry("ifcmembertype",&STEP::ObjectHelper<IfcMemberType,1>::Construct )
  721. , SchemaEntry("ifctablerow",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  722. , SchemaEntry("ifcdistributioncontrolelement",&STEP::ObjectHelper<IfcDistributionControlElement,1>::Construct )
  723. , SchemaEntry("ifcvirtualgridintersection",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  724. , SchemaEntry("ifcorganizationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  725. , SchemaEntry("ifcellipse",&STEP::ObjectHelper<IfcEllipse,2>::Construct )
  726. , SchemaEntry("ifcboundingbox",&STEP::ObjectHelper<IfcBoundingBox,4>::Construct )
  727. , SchemaEntry("ifcprocedure",&STEP::ObjectHelper<IfcProcedure,3>::Construct )
  728. , SchemaEntry("ifcfillareastyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  729. , SchemaEntry("ifcfiresuppressionterminaltype",&STEP::ObjectHelper<IfcFireSuppressionTerminalType,1>::Construct )
  730. , SchemaEntry("ifcsurfacestylelighting",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  731. , SchemaEntry("ifcspatialstructureelementtype",&STEP::ObjectHelper<IfcSpatialStructureElementType,0>::Construct )
  732. , SchemaEntry("ifcproductdefinitionshape",&STEP::ObjectHelper<IfcProductDefinitionShape,0>::Construct )
  733. , SchemaEntry("ifcgeneralprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  734. , SchemaEntry("ifcrampflighttype",&STEP::ObjectHelper<IfcRampFlightType,1>::Construct )
  735. , SchemaEntry("ifcpredefinedpointmarkersymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  736. , SchemaEntry("ifcbuildingstorey",&STEP::ObjectHelper<IfcBuildingStorey,1>::Construct )
  737. , SchemaEntry("ifcalarmtype",&STEP::ObjectHelper<IfcAlarmType,1>::Construct )
  738. , SchemaEntry("ifcperformancehistory",&STEP::ObjectHelper<IfcPerformanceHistory,1>::Construct )
  739. , SchemaEntry("ifcstructuralcurveconnection",&STEP::ObjectHelper<IfcStructuralCurveConnection,0>::Construct )
  740. , SchemaEntry("ifccurtainwall",&STEP::ObjectHelper<IfcCurtainWall,0>::Construct )
  741. , SchemaEntry("ifcpipesegmenttype",&STEP::ObjectHelper<IfcPipeSegmentType,1>::Construct )
  742. , SchemaEntry("ifctrimmedcurve",&STEP::ObjectHelper<IfcTrimmedCurve,5>::Construct )
  743. , SchemaEntry("ifclightsourcepositional",&STEP::ObjectHelper<IfcLightSourcePositional,5>::Construct )
  744. , SchemaEntry("ifcsubedge",&STEP::ObjectHelper<IfcSubedge,1>::Construct )
  745. , SchemaEntry("ifcflowinstrumenttype",&STEP::ObjectHelper<IfcFlowInstrumentType,1>::Construct )
  746. , SchemaEntry("ifcstylemodel",&STEP::ObjectHelper<IfcStyleModel,0>::Construct )
  747. , SchemaEntry("ifcstyledrepresentation",&STEP::ObjectHelper<IfcStyledRepresentation,0>::Construct )
  748. , SchemaEntry("ifclightsourcegoniometric",&STEP::ObjectHelper<IfcLightSourceGoniometric,6>::Construct )
  749. , SchemaEntry("ifcductsegmenttype",&STEP::ObjectHelper<IfcDuctSegmentType,1>::Construct )
  750. , SchemaEntry("ifcservicelifefactor",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  751. , SchemaEntry("ifcconstraintaggregationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  752. , SchemaEntry("ifcannotation",&STEP::ObjectHelper<IfcAnnotation,0>::Construct )
  753. , SchemaEntry("ifcrectangularpyramid",&STEP::ObjectHelper<IfcRectangularPyramid,3>::Construct )
  754. , SchemaEntry("ifcelectricflowstoragedevicetype",&STEP::ObjectHelper<IfcElectricFlowStorageDeviceType,1>::Construct )
  755. , SchemaEntry("ifcoffsetcurve3d",&STEP::ObjectHelper<IfcOffsetCurve3D,4>::Construct )
  756. , SchemaEntry("ifcrelassignstoprojectorder",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  757. , SchemaEntry("ifcshellbasedsurfacemodel",&STEP::ObjectHelper<IfcShellBasedSurfaceModel,1>::Construct )
  758. , SchemaEntry("ifcelectricheatertype",&STEP::ObjectHelper<IfcElectricHeaterType,1>::Construct )
  759. , SchemaEntry("ifclightsourceambient",&STEP::ObjectHelper<IfcLightSourceAmbient,0>::Construct )
  760. , SchemaEntry("ifcrelflowcontrolelements",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  761. , SchemaEntry("ifcquantityvolume",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  762. , SchemaEntry("ifcrelassociateslibrary",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  763. , SchemaEntry("ifcdoor",&STEP::ObjectHelper<IfcDoor,2>::Construct )
  764. , SchemaEntry("ifcflowtreatmentdevice",&STEP::ObjectHelper<IfcFlowTreatmentDevice,0>::Construct )
  765. , SchemaEntry("ifccoordinateduniversaltimeoffset",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  766. , SchemaEntry("ifccoolingtowertype",&STEP::ObjectHelper<IfcCoolingTowerType,1>::Construct )
  767. , SchemaEntry("ifcmaterialclassificationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  768. , SchemaEntry("ifcpolygonalboundedhalfspace",&STEP::ObjectHelper<IfcPolygonalBoundedHalfSpace,2>::Construct )
  769. , SchemaEntry("ifcappliedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  770. , SchemaEntry("ifcenvironmentalimpactvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  771. , SchemaEntry("ifcclassification",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  772. , SchemaEntry("ifcfantype",&STEP::ObjectHelper<IfcFanType,1>::Construct )
  773. , SchemaEntry("ifcdateandtime",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  774. , SchemaEntry("ifcrelsequence",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  775. , SchemaEntry("ifcrelconnectsports",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  776. , SchemaEntry("ifcdirection",&STEP::ObjectHelper<IfcDirection,1>::Construct )
  777. , SchemaEntry("ifcfillareastyletilesymbolwithstyle",&STEP::ObjectHelper<IfcFillAreaStyleTileSymbolWithStyle,1>::Construct )
  778. , SchemaEntry("ifcbeamtype",&STEP::ObjectHelper<IfcBeamType,1>::Construct )
  779. , SchemaEntry("ifcobjectplacement",&STEP::ObjectHelper<IfcObjectPlacement,0>::Construct )
  780. , SchemaEntry("ifclocalplacement",&STEP::ObjectHelper<IfcLocalPlacement,2>::Construct )
  781. , SchemaEntry("ifctextstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  782. , SchemaEntry("ifcpropertysinglevalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  783. , SchemaEntry("ifcaddress",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  784. , SchemaEntry("ifctelecomaddress",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  785. , SchemaEntry("ifcflowfitting",&STEP::ObjectHelper<IfcFlowFitting,0>::Construct )
  786. , SchemaEntry("ifcreinforcingelement",&STEP::ObjectHelper<IfcReinforcingElement,1>::Construct )
  787. , SchemaEntry("ifcreinforcingmesh",&STEP::ObjectHelper<IfcReinforcingMesh,8>::Construct )
  788. , SchemaEntry("ifcconnectioncurvegeometry",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  789. , SchemaEntry("ifcfillareastyletiles",&STEP::ObjectHelper<IfcFillAreaStyleTiles,3>::Construct )
  790. , SchemaEntry("ifccondition",&STEP::ObjectHelper<IfcCondition,0>::Construct )
  791. , SchemaEntry("ifcevaporativecoolertype",&STEP::ObjectHelper<IfcEvaporativeCoolerType,1>::Construct )
  792. , SchemaEntry("ifctextstylefontmodel",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  793. , SchemaEntry("ifccontrollertype",&STEP::ObjectHelper<IfcControllerType,1>::Construct )
  794. , SchemaEntry("ifcrelnests",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  795. , SchemaEntry("ifcexternallydefinedsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  796. , SchemaEntry("ifcstructurallinearaction",&STEP::ObjectHelper<IfcStructuralLinearAction,1>::Construct )
  797. , SchemaEntry("ifcstructurallinearactionvarying",&STEP::ObjectHelper<IfcStructuralLinearActionVarying,2>::Construct )
  798. , SchemaEntry("ifcdoorstyle",&STEP::ObjectHelper<IfcDoorStyle,4>::Construct )
  799. , SchemaEntry("ifcterminatorsymbol",&STEP::ObjectHelper<IfcTerminatorSymbol,1>::Construct )
  800. , SchemaEntry("ifcorganization",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  801. , SchemaEntry("ifcjunctionboxtype",&STEP::ObjectHelper<IfcJunctionBoxType,1>::Construct )
  802. , SchemaEntry("ifcpermeablecoveringproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  803. , SchemaEntry("ifcquantitylength",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  804. , SchemaEntry("ifcelementassembly",&STEP::ObjectHelper<IfcElementAssembly,2>::Construct )
  805. , SchemaEntry("ifcstructuralloadsingleforce",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  806. , SchemaEntry("ifcstackterminaltype",&STEP::ObjectHelper<IfcStackTerminalType,1>::Construct )
  807. , SchemaEntry("ifcstairflight",&STEP::ObjectHelper<IfcStairFlight,4>::Construct )
  808. , SchemaEntry("ifcpropertydependencyrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  809. , SchemaEntry("ifcapprovalactorrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  810. , SchemaEntry("ifccircle",&STEP::ObjectHelper<IfcCircle,1>::Construct )
  811. , SchemaEntry("ifcfurnituretype",&STEP::ObjectHelper<IfcFurnitureType,1>::Construct )
  812. , SchemaEntry("ifcderivedunit",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  813. , SchemaEntry("ifcedgeloop",&STEP::ObjectHelper<IfcEdgeLoop,1>::Construct )
  814. , SchemaEntry("ifcelectricalelement",&STEP::ObjectHelper<IfcElectricalElement,0>::Construct )
  815. , SchemaEntry("ifcrelinteractionrequirements",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  816. , SchemaEntry("ifcstructuralcurvemember",&STEP::ObjectHelper<IfcStructuralCurveMember,1>::Construct )
  817. , SchemaEntry("ifcstructuralcurvemembervarying",&STEP::ObjectHelper<IfcStructuralCurveMemberVarying,0>::Construct )
  818. , SchemaEntry("ifcrepresentationmap",&STEP::ObjectHelper<IfcRepresentationMap,2>::Construct )
  819. , SchemaEntry("ifcspaceheatertype",&STEP::ObjectHelper<IfcSpaceHeaterType,1>::Construct )
  820. , SchemaEntry("ifcreinforcementdefinitionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  821. , SchemaEntry("ifcrelservicesbuildings",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  822. , SchemaEntry("ifcpropertyboundedvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  823. , SchemaEntry("ifcgridplacement",&STEP::ObjectHelper<IfcGridPlacement,2>::Construct )
  824. , SchemaEntry("ifccartesiantransformationoperator2d",&STEP::ObjectHelper<IfcCartesianTransformationOperator2D,0>::Construct )
  825. , SchemaEntry("ifccartesiantransformationoperator2dnonuniform",&STEP::ObjectHelper<IfcCartesianTransformationOperator2DnonUniform,1>::Construct )
  826. , SchemaEntry("ifcasset",&STEP::ObjectHelper<IfcAsset,9>::Construct )
  827. , SchemaEntry("ifcconstructionequipmentresource",&STEP::ObjectHelper<IfcConstructionEquipmentResource,0>::Construct )
  828. , SchemaEntry("ifcrelfillselement",&STEP::ObjectHelper<IfcRelFillsElement,2>::Construct )
  829. , SchemaEntry("ifcannotationfillarea",&STEP::ObjectHelper<IfcAnnotationFillArea,2>::Construct )
  830. , SchemaEntry("ifcpropertyenumeration",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  831. , SchemaEntry("ifcderivedprofiledef",&STEP::ObjectHelper<IfcDerivedProfileDef,3>::Construct )
  832. , SchemaEntry("ifcenergyconversiondevice",&STEP::ObjectHelper<IfcEnergyConversionDevice,0>::Construct )
  833. , SchemaEntry("ifccranerailashapeprofiledef",&STEP::ObjectHelper<IfcCraneRailAShapeProfileDef,12>::Construct )
  834. , SchemaEntry("ifcregulartimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  835. , SchemaEntry("ifcstructuralresultgroup",&STEP::ObjectHelper<IfcStructuralResultGroup,3>::Construct )
  836. , SchemaEntry("ifcdoorliningproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  837. , SchemaEntry("ifcwasteterminaltype",&STEP::ObjectHelper<IfcWasteTerminalType,1>::Construct )
  838. , SchemaEntry("ifcsensortype",&STEP::ObjectHelper<IfcSensorType,1>::Construct )
  839. , SchemaEntry("ifcrelassociatesmaterial",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  840. , SchemaEntry("ifcrelassignstasks",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  841. , SchemaEntry("ifcsurfacestylerefraction",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  842. , SchemaEntry("ifcangulardimension",&STEP::ObjectHelper<IfcAngularDimension,0>::Construct )
  843. , SchemaEntry("ifcroof",&STEP::ObjectHelper<IfcRoof,1>::Construct )
  844. , SchemaEntry("ifcpostaladdress",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  845. , SchemaEntry("ifccondensertype",&STEP::ObjectHelper<IfcCondenserType,1>::Construct )
  846. , SchemaEntry("ifcrelaggregates",&STEP::ObjectHelper<IfcRelAggregates,0>::Construct )
  847. , SchemaEntry("ifcplate",&STEP::ObjectHelper<IfcPlate,0>::Construct )
  848. , SchemaEntry("ifcline",&STEP::ObjectHelper<IfcLine,2>::Construct )
  849. , SchemaEntry("ifcorderaction",&STEP::ObjectHelper<IfcOrderAction,1>::Construct )
  850. , SchemaEntry("ifcplanarextent",&STEP::ObjectHelper<IfcPlanarExtent,2>::Construct )
  851. , SchemaEntry("ifcplanarbox",&STEP::ObjectHelper<IfcPlanarBox,1>::Construct )
  852. , SchemaEntry("ifcquantitytime",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  853. , SchemaEntry("ifcapproval",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  854. , SchemaEntry("ifcspacetype",&STEP::ObjectHelper<IfcSpaceType,1>::Construct )
  855. , SchemaEntry("ifccostschedule",&STEP::ObjectHelper<IfcCostSchedule,8>::Construct )
  856. , SchemaEntry("ifcfuelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  857. , SchemaEntry("ifcbuildingelementproxy",&STEP::ObjectHelper<IfcBuildingElementProxy,1>::Construct )
  858. , SchemaEntry("ifcreloverridesproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  859. , SchemaEntry("ifcductfittingtype",&STEP::ObjectHelper<IfcDuctFittingType,1>::Construct )
  860. , SchemaEntry("ifcrelspaceboundary",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  861. , SchemaEntry("ifcsanitaryterminaltype",&STEP::ObjectHelper<IfcSanitaryTerminalType,1>::Construct )
  862. , SchemaEntry("ifccurvestylefontandscaling",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  863. , SchemaEntry("ifctshapeprofiledef",&STEP::ObjectHelper<IfcTShapeProfileDef,10>::Construct )
  864. , SchemaEntry("ifcenergyproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  865. , SchemaEntry("ifcelectricalbaseproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  866. , SchemaEntry("ifcopticalmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  867. , SchemaEntry("ifcequipmentelement",&STEP::ObjectHelper<IfcEquipmentElement,0>::Construct )
  868. , SchemaEntry("ifcclassificationnotationfacet",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  869. , SchemaEntry("ifcvertexloop",&STEP::ObjectHelper<IfcVertexLoop,1>::Construct )
  870. , SchemaEntry("ifcvirtualelement",&STEP::ObjectHelper<IfcVirtualElement,0>::Construct )
  871. , SchemaEntry("ifcvertex",&STEP::ObjectHelper<IfcVertex,0>::Construct )
  872. , SchemaEntry("ifcvertexpoint",&STEP::ObjectHelper<IfcVertexPoint,1>::Construct )
  873. , SchemaEntry("ifcclassificationitemrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  874. , SchemaEntry("ifctendonanchor",&STEP::ObjectHelper<IfcTendonAnchor,0>::Construct )
  875. , SchemaEntry("ifcrelassignstoresource",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  876. , SchemaEntry("ifcstructuralprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  877. , SchemaEntry("ifcstructuralsteelprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  878. , SchemaEntry("ifcgeneralmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  879. , SchemaEntry("ifcrelassignstogroup",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  880. , SchemaEntry("ifcprojectionelement",&STEP::ObjectHelper<IfcProjectionElement,0>::Construct )
  881. , SchemaEntry("ifcprotectivedevicetype",&STEP::ObjectHelper<IfcProtectiveDeviceType,1>::Construct )
  882. , SchemaEntry("ifcannotationsurfaceoccurrence",&STEP::ObjectHelper<IfcAnnotationSurfaceOccurrence,0>::Construct )
  883. , SchemaEntry("ifcproductsofcombustionproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  884. , SchemaEntry("ifcstructuralloadsingleforcewarping",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  885. , SchemaEntry("ifcrampflight",&STEP::ObjectHelper<IfcRampFlight,0>::Construct )
  886. , SchemaEntry("ifctable",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  887. , SchemaEntry("ifcpile",&STEP::ObjectHelper<IfcPile,2>::Construct )
  888. , SchemaEntry("ifccostvalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  889. , SchemaEntry("ifcdimensioncurveterminator",&STEP::ObjectHelper<IfcDimensionCurveTerminator,1>::Construct )
  890. , SchemaEntry("ifcexternallydefinedtextfont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  891. , SchemaEntry("ifcarbitraryprofiledefwithvoids",&STEP::ObjectHelper<IfcArbitraryProfileDefWithVoids,1>::Construct )
  892. , SchemaEntry("ifcdimensionpair",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  893. , SchemaEntry("ifcoutlettype",&STEP::ObjectHelper<IfcOutletType,1>::Construct )
  894. , SchemaEntry("ifcmaterial",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  895. , SchemaEntry("ifcsymbolstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  896. , SchemaEntry("ifclightsourcespot",&STEP::ObjectHelper<IfcLightSourceSpot,4>::Construct )
  897. , SchemaEntry("ifcdistributionchamberelementtype",&STEP::ObjectHelper<IfcDistributionChamberElementType,1>::Construct )
  898. , SchemaEntry("ifctexturecoordinate",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  899. , SchemaEntry("ifctexturecoordinategenerator",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  900. , SchemaEntry("ifclightintensitydistribution",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  901. , SchemaEntry("ifcwalltype",&STEP::ObjectHelper<IfcWallType,1>::Construct )
  902. , SchemaEntry("ifcconstructionproductresource",&STEP::ObjectHelper<IfcConstructionProductResource,0>::Construct )
  903. , SchemaEntry("ifcelectricalcircuit",&STEP::ObjectHelper<IfcElectricalCircuit,0>::Construct )
  904. , SchemaEntry("ifccoveringtype",&STEP::ObjectHelper<IfcCoveringType,1>::Construct )
  905. , SchemaEntry("ifcairterminalboxtype",&STEP::ObjectHelper<IfcAirTerminalBoxType,1>::Construct )
  906. , SchemaEntry("ifccablecarrierfittingtype",&STEP::ObjectHelper<IfcCableCarrierFittingType,1>::Construct )
  907. , SchemaEntry("ifcwindowstyle",&STEP::ObjectHelper<IfcWindowStyle,4>::Construct )
  908. , SchemaEntry("ifcboundaryedgecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  909. , SchemaEntry("ifcstairflighttype",&STEP::ObjectHelper<IfcStairFlightType,1>::Construct )
  910. , SchemaEntry("ifcpointoncurve",&STEP::ObjectHelper<IfcPointOnCurve,2>::Construct )
  911. , SchemaEntry("ifctubebundletype",&STEP::ObjectHelper<IfcTubeBundleType,1>::Construct )
  912. , SchemaEntry("ifcsurfacestyleshading",&STEP::ObjectHelper<IfcSurfaceStyleShading,1>::Construct )
  913. , SchemaEntry("ifcsurfacestylerendering",&STEP::ObjectHelper<IfcSurfaceStyleRendering,8>::Construct )
  914. , SchemaEntry("ifcproxy",&STEP::ObjectHelper<IfcProxy,2>::Construct )
  915. , SchemaEntry("ifctendon",&STEP::ObjectHelper<IfcTendon,8>::Construct )
  916. , SchemaEntry("ifcstructuralloadplanarforce",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  917. , SchemaEntry("ifcimagetexture",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  918. , SchemaEntry("ifcsurfacestyle",&STEP::ObjectHelper<IfcSurfaceStyle,2>::Construct )
  919. , SchemaEntry("ifcgeometricrepresentationcontext",&STEP::ObjectHelper<IfcGeometricRepresentationContext,4>::Construct )
  920. , SchemaEntry("ifcgeometricrepresentationsubcontext",&STEP::ObjectHelper<IfcGeometricRepresentationSubContext,4>::Construct )
  921. , SchemaEntry("ifcmotorconnectiontype",&STEP::ObjectHelper<IfcMotorConnectionType,1>::Construct )
  922. , SchemaEntry("ifcrelconnectswithrealizingelements",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  923. , SchemaEntry("ifcvalvetype",&STEP::ObjectHelper<IfcValveType,1>::Construct )
  924. , SchemaEntry("ifccurvestylefont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  925. , SchemaEntry("ifcflowsegment",&STEP::ObjectHelper<IfcFlowSegment,0>::Construct )
  926. , SchemaEntry("ifctextstylefordefinedfont",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  927. , SchemaEntry("ifcworkschedule",&STEP::ObjectHelper<IfcWorkSchedule,0>::Construct )
  928. , SchemaEntry("ifcdefinedsymbol",&STEP::ObjectHelper<IfcDefinedSymbol,2>::Construct )
  929. , SchemaEntry("ifcfurnishingelement",&STEP::ObjectHelper<IfcFurnishingElement,0>::Construct )
  930. , SchemaEntry("ifcmonetaryunit",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  931. , SchemaEntry("ifcblock",&STEP::ObjectHelper<IfcBlock,3>::Construct )
  932. , SchemaEntry("ifcbooleanresult",&STEP::ObjectHelper<IfcBooleanResult,3>::Construct )
  933. , SchemaEntry("ifccostitem",&STEP::ObjectHelper<IfcCostItem,0>::Construct )
  934. , SchemaEntry("ifcrelassociatesapproval",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  935. , SchemaEntry("ifcconstraintclassificationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  936. , SchemaEntry("ifcexternallydefinedhatchstyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  937. , SchemaEntry("ifcdimensioncalloutrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  938. , SchemaEntry("ifcaxis2placement2d",&STEP::ObjectHelper<IfcAxis2Placement2D,1>::Construct )
  939. , SchemaEntry("ifcfiltertype",&STEP::ObjectHelper<IfcFilterType,1>::Construct )
  940. , SchemaEntry("ifcreinforcingbar",&STEP::ObjectHelper<IfcReinforcingBar,5>::Construct )
  941. , SchemaEntry("ifcexternallydefinedsurfacestyle",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  942. , SchemaEntry("ifcorientededge",&STEP::ObjectHelper<IfcOrientedEdge,2>::Construct )
  943. , SchemaEntry("ifcmember",&STEP::ObjectHelper<IfcMember,0>::Construct )
  944. , SchemaEntry("ifcdocumentinformationrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  945. , SchemaEntry("ifctextstyletextmodel",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  946. , SchemaEntry("ifcquantitycount",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  947. , SchemaEntry("ifcsurfacecurvesweptareasolid",&STEP::ObjectHelper<IfcSurfaceCurveSweptAreaSolid,4>::Construct )
  948. , SchemaEntry("ifcirregulartimeseries",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  949. , SchemaEntry("ifcmateriallist",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  950. , SchemaEntry("ifcelectricappliancetype",&STEP::ObjectHelper<IfcElectricApplianceType,1>::Construct )
  951. , SchemaEntry("ifcopeningelement",&STEP::ObjectHelper<IfcOpeningElement,0>::Construct )
  952. , SchemaEntry("ifcroundedrectangleprofiledef",&STEP::ObjectHelper<IfcRoundedRectangleProfileDef,1>::Construct )
  953. , SchemaEntry("ifcconstructionmaterialresource",&STEP::ObjectHelper<IfcConstructionMaterialResource,2>::Construct )
  954. , SchemaEntry("ifcboundaryfacecondition",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  955. , SchemaEntry("ifccompositecurvesegment",&STEP::ObjectHelper<IfcCompositeCurveSegment,3>::Construct )
  956. , SchemaEntry("ifcsweptsurface",&STEP::ObjectHelper<IfcSweptSurface,2>::Construct )
  957. , SchemaEntry("ifcsurfaceofrevolution",&STEP::ObjectHelper<IfcSurfaceOfRevolution,1>::Construct )
  958. , SchemaEntry("ifcsphere",&STEP::ObjectHelper<IfcSphere,1>::Construct )
  959. , SchemaEntry("ifcpresentationstyleassignment",&STEP::ObjectHelper<IfcPresentationStyleAssignment,1>::Construct )
  960. , SchemaEntry("ifcelementarysurface",&STEP::ObjectHelper<IfcElementarySurface,1>::Construct )
  961. , SchemaEntry("ifcslabtype",&STEP::ObjectHelper<IfcSlabType,1>::Construct )
  962. , SchemaEntry("ifcellipseprofiledef",&STEP::ObjectHelper<IfcEllipseProfileDef,2>::Construct )
  963. , SchemaEntry("ifcrelvoidselement",&STEP::ObjectHelper<IfcRelVoidsElement,2>::Construct )
  964. , SchemaEntry("ifctrapeziumprofiledef",&STEP::ObjectHelper<IfcTrapeziumProfileDef,4>::Construct )
  965. , SchemaEntry("ifccartesianpoint",&STEP::ObjectHelper<IfcCartesianPoint,1>::Construct )
  966. , SchemaEntry("ifcchamferedgefeature",&STEP::ObjectHelper<IfcChamferEdgeFeature,2>::Construct )
  967. , SchemaEntry("ifcconstraintrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  968. , SchemaEntry("ifcpredefineddimensionsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  969. , SchemaEntry("ifclightsourcedirectional",&STEP::ObjectHelper<IfcLightSourceDirectional,1>::Construct )
  970. , SchemaEntry("ifcairtoairheatrecoverytype",&STEP::ObjectHelper<IfcAirToAirHeatRecoveryType,1>::Construct )
  971. , SchemaEntry("ifcextendedmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  972. , SchemaEntry("ifcpropertyconstraintrelationship",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  973. , SchemaEntry("ifcboilertype",&STEP::ObjectHelper<IfcBoilerType,1>::Construct )
  974. , SchemaEntry("ifcclassificationitem",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  975. , SchemaEntry("ifcmechanicalsteelmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  976. , SchemaEntry("ifcoffsetcurve2d",&STEP::ObjectHelper<IfcOffsetCurve2D,3>::Construct )
  977. , SchemaEntry("ifcslab",&STEP::ObjectHelper<IfcSlab,1>::Construct )
  978. , SchemaEntry("ifcfastenertype",&STEP::ObjectHelper<IfcFastenerType,0>::Construct )
  979. , SchemaEntry("ifcmechanicalfastenertype",&STEP::ObjectHelper<IfcMechanicalFastenerType,0>::Construct )
  980. , SchemaEntry("ifcflowmetertype",&STEP::ObjectHelper<IfcFlowMeterType,1>::Construct )
  981. , SchemaEntry("ifcboxedhalfspace",&STEP::ObjectHelper<IfcBoxedHalfSpace,1>::Construct )
  982. , SchemaEntry("ifcflowterminal",&STEP::ObjectHelper<IfcFlowTerminal,0>::Construct )
  983. , SchemaEntry("ifclightdistributiondata",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  984. , SchemaEntry("ifcstructuralloadgroup",&STEP::ObjectHelper<IfcStructuralLoadGroup,5>::Construct )
  985. , SchemaEntry("ifczone",&STEP::ObjectHelper<IfcZone,0>::Construct )
  986. , SchemaEntry("ifcactionrequest",&STEP::ObjectHelper<IfcActionRequest,1>::Construct )
  987. , SchemaEntry("ifcfooting",&STEP::ObjectHelper<IfcFooting,1>::Construct )
  988. , SchemaEntry("ifcderivedunitelement",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  989. , SchemaEntry("ifccurvestylefontpattern",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  990. , SchemaEntry("ifcwindowpanelproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  991. , SchemaEntry("ifcstructuralpointaction",&STEP::ObjectHelper<IfcStructuralPointAction,0>::Construct )
  992. , SchemaEntry("ifcshapeaspect",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  993. , SchemaEntry("ifcstructureddimensioncallout",&STEP::ObjectHelper<IfcStructuredDimensionCallout,0>::Construct )
  994. , SchemaEntry("ifcpredefinedterminatorsymbol",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  995. , SchemaEntry("ifccompressortype",&STEP::ObjectHelper<IfcCompressorType,1>::Construct )
  996. , SchemaEntry("ifcbooleanclippingresult",&STEP::ObjectHelper<IfcBooleanClippingResult,0>::Construct )
  997. , SchemaEntry("ifchygroscopicmaterialproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  998. , SchemaEntry("ifcsurfaceoflinearextrusion",&STEP::ObjectHelper<IfcSurfaceOfLinearExtrusion,2>::Construct )
  999. , SchemaEntry("ifcdampertype",&STEP::ObjectHelper<IfcDamperType,1>::Construct )
  1000. , SchemaEntry("ifcstructuralpointconnection",&STEP::ObjectHelper<IfcStructuralPointConnection,0>::Construct )
  1001. , SchemaEntry("ifctransportelementtype",&STEP::ObjectHelper<IfcTransportElementType,1>::Construct )
  1002. , SchemaEntry("ifcrelassociatesconstraint",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1003. , SchemaEntry("ifcwindowliningproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1004. , SchemaEntry("ifctexturemap",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1005. , SchemaEntry("ifcactorrole",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1006. , SchemaEntry("ifcblobtexture",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1007. , SchemaEntry("ifcpropertytablevalue",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1008. , SchemaEntry("ifcdocumentreference",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1009. , SchemaEntry("ifcplatetype",&STEP::ObjectHelper<IfcPlateType,1>::Construct )
  1010. , SchemaEntry("ifcservicelife",&STEP::ObjectHelper<IfcServiceLife,2>::Construct )
  1011. , SchemaEntry("ifccrewresource",&STEP::ObjectHelper<IfcCrewResource,0>::Construct )
  1012. , SchemaEntry("ifcfacetedbrep",&STEP::ObjectHelper<IfcFacetedBrep,0>::Construct )
  1013. , SchemaEntry("ifcplane",&STEP::ObjectHelper<IfcPlane,0>::Construct )
  1014. , SchemaEntry("ifcrelassociatesprofileproperties",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1015. , SchemaEntry("ifccontextdependentunit",&STEP::ObjectHelper<IfcContextDependentUnit,1>::Construct )
  1016. , SchemaEntry("ifcrailing",&STEP::ObjectHelper<IfcRailing,1>::Construct )
  1017. , SchemaEntry("ifccalendardate",&STEP::ObjectHelper<NotImplemented,0>::Construct )
  1018. , SchemaEntry("ifcradiusdimension",&STEP::ObjectHelper<IfcRadiusDimension,0>::Construct )
  1019. , SchemaEntry("ifclamptype",&STEP::ObjectHelper<IfcLampType,1>::Construct )
  1020. , SchemaEntry("ifcsurfacestylewithtextures",&STEP::ObjectHelper<IfcSurfaceStyleWithTextures,1>::Construct )
  1021. , SchemaEntry("ifcshaperepresentation",&STEP::ObjectHelper<IfcShapeRepresentation,0>::Construct )
  1022. };
  1023. }
  1024. // -----------------------------------------------------------------------------------------------------------
  1025. void IFC::GetSchema(EXPRESS::ConversionSchema& out)
  1026. {
  1027. out = EXPRESS::ConversionSchema(schema_raw);
  1028. }
  1029. namespace STEP {
  1030. // -----------------------------------------------------------------------------------------------------------
  1031. template <> size_t GenericFill<NotImplemented>(const STEP::DB& db, const LIST& params, NotImplemented* in)
  1032. {
  1033. return 0;
  1034. }
  1035. // -----------------------------------------------------------------------------------------------------------
  1036. template <> size_t GenericFill<IfcRoot>(const DB& db, const LIST& params, IfcRoot* in)
  1037. {
  1038. size_t base = 0;
  1039. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRoot"); } do { // convert the 'GlobalId' argument
  1040. boost::shared_ptr<const DataType> arg = params[base++];
  1041. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[0]=true; break; }
  1042. try { GenericConvert( in->GlobalId, arg, db ); break; }
  1043. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRoot to be a `IfcGloballyUniqueId`")); }
  1044. } while(0);
  1045. do { // convert the 'OwnerHistory' argument
  1046. boost::shared_ptr<const DataType> arg = params[base++];
  1047. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[1]=true; break; }
  1048. try { GenericConvert( in->OwnerHistory, arg, db ); break; }
  1049. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRoot to be a `IfcOwnerHistory`")); }
  1050. } while(0);
  1051. do { // convert the 'Name' argument
  1052. boost::shared_ptr<const DataType> arg = params[base++];
  1053. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[2]=true; break; }
  1054. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1055. try { GenericConvert( in->Name, arg, db ); break; }
  1056. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRoot to be a `IfcLabel`")); }
  1057. } while(0);
  1058. do { // convert the 'Description' argument
  1059. boost::shared_ptr<const DataType> arg = params[base++];
  1060. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRoot,4>::aux_is_derived[3]=true; break; }
  1061. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1062. try { GenericConvert( in->Description, arg, db ); break; }
  1063. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRoot to be a `IfcText`")); }
  1064. } while(0);
  1065. return base;
  1066. }
  1067. // -----------------------------------------------------------------------------------------------------------
  1068. template <> size_t GenericFill<IfcRelationship>(const DB& db, const LIST& params, IfcRelationship* in)
  1069. {
  1070. size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in));
  1071. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRelationship"); } return base;
  1072. }
  1073. // -----------------------------------------------------------------------------------------------------------
  1074. template <> size_t GenericFill<IfcRelConnects>(const DB& db, const LIST& params, IfcRelConnects* in)
  1075. {
  1076. size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in));
  1077. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRelConnects"); } return base;
  1078. }
  1079. // -----------------------------------------------------------------------------------------------------------
  1080. template <> size_t GenericFill<IfcRepresentationItem>(const DB& db, const LIST& params, IfcRepresentationItem* in)
  1081. {
  1082. size_t base = 0;
  1083. return base;
  1084. }
  1085. // -----------------------------------------------------------------------------------------------------------
  1086. template <> size_t GenericFill<IfcGeometricRepresentationItem>(const DB& db, const LIST& params, IfcGeometricRepresentationItem* in)
  1087. {
  1088. size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in));
  1089. return base;
  1090. }
  1091. // -----------------------------------------------------------------------------------------------------------
  1092. template <> size_t GenericFill<IfcCurve>(const DB& db, const LIST& params, IfcCurve* in)
  1093. {
  1094. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1095. return base;
  1096. }
  1097. // -----------------------------------------------------------------------------------------------------------
  1098. template <> size_t GenericFill<IfcBoundedCurve>(const DB& db, const LIST& params, IfcBoundedCurve* in)
  1099. {
  1100. size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in));
  1101. return base;
  1102. }
  1103. // -----------------------------------------------------------------------------------------------------------
  1104. template <> size_t GenericFill<IfcObjectDefinition>(const DB& db, const LIST& params, IfcObjectDefinition* in)
  1105. {
  1106. size_t base = GenericFill(db,params,static_cast<IfcRoot*>(in));
  1107. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcObjectDefinition"); } return base;
  1108. }
  1109. // -----------------------------------------------------------------------------------------------------------
  1110. template <> size_t GenericFill<IfcObject>(const DB& db, const LIST& params, IfcObject* in)
  1111. {
  1112. size_t base = GenericFill(db,params,static_cast<IfcObjectDefinition*>(in));
  1113. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcObject"); } do { // convert the 'ObjectType' argument
  1114. boost::shared_ptr<const DataType> arg = params[base++];
  1115. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcObject,1>::aux_is_derived[0]=true; break; }
  1116. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1117. try { GenericConvert( in->ObjectType, arg, db ); break; }
  1118. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcObject to be a `IfcLabel`")); }
  1119. } while(0);
  1120. return base;
  1121. }
  1122. // -----------------------------------------------------------------------------------------------------------
  1123. template <> size_t GenericFill<IfcControl>(const DB& db, const LIST& params, IfcControl* in)
  1124. {
  1125. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  1126. // this data structure is not used yet, so there is no code generated to fill its members
  1127. return base;
  1128. }
  1129. // -----------------------------------------------------------------------------------------------------------
  1130. template <> size_t GenericFill<IfcTimeSeriesSchedule>(const DB& db, const LIST& params, IfcTimeSeriesSchedule* in)
  1131. {
  1132. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  1133. // this data structure is not used yet, so there is no code generated to fill its members
  1134. return base;
  1135. }
  1136. // -----------------------------------------------------------------------------------------------------------
  1137. template <> size_t GenericFill<IfcSolidModel>(const DB& db, const LIST& params, IfcSolidModel* in)
  1138. {
  1139. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1140. return base;
  1141. }
  1142. // -----------------------------------------------------------------------------------------------------------
  1143. template <> size_t GenericFill<IfcSweptAreaSolid>(const DB& db, const LIST& params, IfcSweptAreaSolid* in)
  1144. {
  1145. size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in));
  1146. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcSweptAreaSolid"); } do { // convert the 'SweptArea' argument
  1147. boost::shared_ptr<const DataType> arg = params[base++];
  1148. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSweptAreaSolid,2>::aux_is_derived[0]=true; break; }
  1149. try { GenericConvert( in->SweptArea, arg, db ); break; }
  1150. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSweptAreaSolid to be a `IfcProfileDef`")); }
  1151. } while(0);
  1152. do { // convert the 'Position' argument
  1153. boost::shared_ptr<const DataType> arg = params[base++];
  1154. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSweptAreaSolid,2>::aux_is_derived[1]=true; break; }
  1155. try { GenericConvert( in->Position, arg, db ); break; }
  1156. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSweptAreaSolid to be a `IfcAxis2Placement3D`")); }
  1157. } while(0);
  1158. return base;
  1159. }
  1160. // -----------------------------------------------------------------------------------------------------------
  1161. template <> size_t GenericFill<IfcExtrudedAreaSolid>(const DB& db, const LIST& params, IfcExtrudedAreaSolid* in)
  1162. {
  1163. size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in));
  1164. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcExtrudedAreaSolid"); } do { // convert the 'ExtrudedDirection' argument
  1165. boost::shared_ptr<const DataType> arg = params[base++];
  1166. try { GenericConvert( in->ExtrudedDirection, arg, db ); break; }
  1167. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcExtrudedAreaSolid to be a `IfcDirection`")); }
  1168. } while(0);
  1169. do { // convert the 'Depth' argument
  1170. boost::shared_ptr<const DataType> arg = params[base++];
  1171. try { GenericConvert( in->Depth, arg, db ); break; }
  1172. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcExtrudedAreaSolid to be a `IfcPositiveLengthMeasure`")); }
  1173. } while(0);
  1174. return base;
  1175. }
  1176. // -----------------------------------------------------------------------------------------------------------
  1177. template <> size_t GenericFill<IfcConditionCriterion>(const DB& db, const LIST& params, IfcConditionCriterion* in)
  1178. {
  1179. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  1180. // this data structure is not used yet, so there is no code generated to fill its members
  1181. return base;
  1182. }
  1183. // -----------------------------------------------------------------------------------------------------------
  1184. template <> size_t GenericFill<IfcTypeObject>(const DB& db, const LIST& params, IfcTypeObject* in)
  1185. {
  1186. size_t base = GenericFill(db,params,static_cast<IfcObjectDefinition*>(in));
  1187. // this data structure is not used yet, so there is no code generated to fill its members
  1188. return base;
  1189. }
  1190. // -----------------------------------------------------------------------------------------------------------
  1191. template <> size_t GenericFill<IfcTypeProduct>(const DB& db, const LIST& params, IfcTypeProduct* in)
  1192. {
  1193. size_t base = GenericFill(db,params,static_cast<IfcTypeObject*>(in));
  1194. // this data structure is not used yet, so there is no code generated to fill its members
  1195. return base;
  1196. }
  1197. // -----------------------------------------------------------------------------------------------------------
  1198. template <> size_t GenericFill<IfcElementType>(const DB& db, const LIST& params, IfcElementType* in)
  1199. {
  1200. size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in));
  1201. // this data structure is not used yet, so there is no code generated to fill its members
  1202. return base;
  1203. }
  1204. // -----------------------------------------------------------------------------------------------------------
  1205. template <> size_t GenericFill<IfcDistributionElementType>(const DB& db, const LIST& params, IfcDistributionElementType* in)
  1206. {
  1207. size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in));
  1208. // this data structure is not used yet, so there is no code generated to fill its members
  1209. return base;
  1210. }
  1211. // -----------------------------------------------------------------------------------------------------------
  1212. template <> size_t GenericFill<IfcDistributionFlowElementType>(const DB& db, const LIST& params, IfcDistributionFlowElementType* in)
  1213. {
  1214. size_t base = GenericFill(db,params,static_cast<IfcDistributionElementType*>(in));
  1215. // this data structure is not used yet, so there is no code generated to fill its members
  1216. return base;
  1217. }
  1218. // -----------------------------------------------------------------------------------------------------------
  1219. template <> size_t GenericFill<IfcFlowTreatmentDeviceType>(const DB& db, const LIST& params, IfcFlowTreatmentDeviceType* in)
  1220. {
  1221. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  1222. // this data structure is not used yet, so there is no code generated to fill its members
  1223. return base;
  1224. }
  1225. // -----------------------------------------------------------------------------------------------------------
  1226. template <> size_t GenericFill<IfcDuctSilencerType>(const DB& db, const LIST& params, IfcDuctSilencerType* in)
  1227. {
  1228. size_t base = GenericFill(db,params,static_cast<IfcFlowTreatmentDeviceType*>(in));
  1229. // this data structure is not used yet, so there is no code generated to fill its members
  1230. return base;
  1231. }
  1232. // -----------------------------------------------------------------------------------------------------------
  1233. template <> size_t GenericFill<IfcProduct>(const DB& db, const LIST& params, IfcProduct* in)
  1234. {
  1235. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  1236. if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcProduct"); } do { // convert the 'ObjectPlacement' argument
  1237. boost::shared_ptr<const DataType> arg = params[base++];
  1238. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProduct,2>::aux_is_derived[0]=true; break; }
  1239. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1240. try { GenericConvert( in->ObjectPlacement, arg, db ); break; }
  1241. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcProduct to be a `IfcObjectPlacement`")); }
  1242. } while(0);
  1243. do { // convert the 'Representation' argument
  1244. boost::shared_ptr<const DataType> arg = params[base++];
  1245. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProduct,2>::aux_is_derived[1]=true; break; }
  1246. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1247. try { GenericConvert( in->Representation, arg, db ); break; }
  1248. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcProduct to be a `IfcProductRepresentation`")); }
  1249. } while(0);
  1250. return base;
  1251. }
  1252. // -----------------------------------------------------------------------------------------------------------
  1253. template <> size_t GenericFill<IfcElement>(const DB& db, const LIST& params, IfcElement* in)
  1254. {
  1255. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  1256. if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcElement"); } do { // convert the 'Tag' argument
  1257. boost::shared_ptr<const DataType> arg = params[base++];
  1258. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcElement,1>::aux_is_derived[0]=true; break; }
  1259. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1260. try { GenericConvert( in->Tag, arg, db ); break; }
  1261. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcElement to be a `IfcIdentifier`")); }
  1262. } while(0);
  1263. return base;
  1264. }
  1265. // -----------------------------------------------------------------------------------------------------------
  1266. template <> size_t GenericFill<IfcElementComponent>(const DB& db, const LIST& params, IfcElementComponent* in)
  1267. {
  1268. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  1269. // this data structure is not used yet, so there is no code generated to fill its members
  1270. return base;
  1271. }
  1272. // -----------------------------------------------------------------------------------------------------------
  1273. template <> size_t GenericFill<IfcDiscreteAccessory>(const DB& db, const LIST& params, IfcDiscreteAccessory* in)
  1274. {
  1275. size_t base = GenericFill(db,params,static_cast<IfcElementComponent*>(in));
  1276. // this data structure is not used yet, so there is no code generated to fill its members
  1277. return base;
  1278. }
  1279. // -----------------------------------------------------------------------------------------------------------
  1280. template <> size_t GenericFill<IfcDistributionElement>(const DB& db, const LIST& params, IfcDistributionElement* in)
  1281. {
  1282. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  1283. // this data structure is not used yet, so there is no code generated to fill its members
  1284. return base;
  1285. }
  1286. // -----------------------------------------------------------------------------------------------------------
  1287. template <> size_t GenericFill<IfcDistributionFlowElement>(const DB& db, const LIST& params, IfcDistributionFlowElement* in)
  1288. {
  1289. size_t base = GenericFill(db,params,static_cast<IfcDistributionElement*>(in));
  1290. // this data structure is not used yet, so there is no code generated to fill its members
  1291. return base;
  1292. }
  1293. // -----------------------------------------------------------------------------------------------------------
  1294. template <> size_t GenericFill<IfcFlowController>(const DB& db, const LIST& params, IfcFlowController* in)
  1295. {
  1296. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  1297. // this data structure is not used yet, so there is no code generated to fill its members
  1298. return base;
  1299. }
  1300. // -----------------------------------------------------------------------------------------------------------
  1301. template <> size_t GenericFill<IfcElectricDistributionPoint>(const DB& db, const LIST& params, IfcElectricDistributionPoint* in)
  1302. {
  1303. size_t base = GenericFill(db,params,static_cast<IfcFlowController*>(in));
  1304. // this data structure is not used yet, so there is no code generated to fill its members
  1305. return base;
  1306. }
  1307. // -----------------------------------------------------------------------------------------------------------
  1308. template <> size_t GenericFill<IfcTextLiteral>(const DB& db, const LIST& params, IfcTextLiteral* in)
  1309. {
  1310. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1311. // this data structure is not used yet, so there is no code generated to fill its members
  1312. return base;
  1313. }
  1314. // -----------------------------------------------------------------------------------------------------------
  1315. template <> size_t GenericFill<IfcTextLiteralWithExtent>(const DB& db, const LIST& params, IfcTextLiteralWithExtent* in)
  1316. {
  1317. size_t base = GenericFill(db,params,static_cast<IfcTextLiteral*>(in));
  1318. // this data structure is not used yet, so there is no code generated to fill its members
  1319. return base;
  1320. }
  1321. // -----------------------------------------------------------------------------------------------------------
  1322. template <> size_t GenericFill<IfcVector>(const DB& db, const LIST& params, IfcVector* in)
  1323. {
  1324. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1325. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcVector"); } do { // convert the 'Orientation' argument
  1326. boost::shared_ptr<const DataType> arg = params[base++];
  1327. try { GenericConvert( in->Orientation, arg, db ); break; }
  1328. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcVector to be a `IfcDirection`")); }
  1329. } while(0);
  1330. do { // convert the 'Magnitude' argument
  1331. boost::shared_ptr<const DataType> arg = params[base++];
  1332. try { GenericConvert( in->Magnitude, arg, db ); break; }
  1333. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcVector to be a `IfcLengthMeasure`")); }
  1334. } while(0);
  1335. return base;
  1336. }
  1337. // -----------------------------------------------------------------------------------------------------------
  1338. template <> size_t GenericFill<IfcBuildingElement>(const DB& db, const LIST& params, IfcBuildingElement* in)
  1339. {
  1340. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  1341. if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcBuildingElement"); } return base;
  1342. }
  1343. // -----------------------------------------------------------------------------------------------------------
  1344. template <> size_t GenericFill<IfcWindow>(const DB& db, const LIST& params, IfcWindow* in)
  1345. {
  1346. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  1347. // this data structure is not used yet, so there is no code generated to fill its members
  1348. return base;
  1349. }
  1350. // -----------------------------------------------------------------------------------------------------------
  1351. template <> size_t GenericFill<IfcCovering>(const DB& db, const LIST& params, IfcCovering* in)
  1352. {
  1353. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  1354. // this data structure is not used yet, so there is no code generated to fill its members
  1355. return base;
  1356. }
  1357. // -----------------------------------------------------------------------------------------------------------
  1358. template <> size_t GenericFill<IfcCsgPrimitive3D>(const DB& db, const LIST& params, IfcCsgPrimitive3D* in)
  1359. {
  1360. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1361. // this data structure is not used yet, so there is no code generated to fill its members
  1362. return base;
  1363. }
  1364. // -----------------------------------------------------------------------------------------------------------
  1365. template <> size_t GenericFill<IfcRightCircularCone>(const DB& db, const LIST& params, IfcRightCircularCone* in)
  1366. {
  1367. size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in));
  1368. // this data structure is not used yet, so there is no code generated to fill its members
  1369. return base;
  1370. }
  1371. // -----------------------------------------------------------------------------------------------------------
  1372. template <> size_t GenericFill<IfcStructuralItem>(const DB& db, const LIST& params, IfcStructuralItem* in)
  1373. {
  1374. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  1375. // this data structure is not used yet, so there is no code generated to fill its members
  1376. return base;
  1377. }
  1378. // -----------------------------------------------------------------------------------------------------------
  1379. template <> size_t GenericFill<IfcStructuralMember>(const DB& db, const LIST& params, IfcStructuralMember* in)
  1380. {
  1381. size_t base = GenericFill(db,params,static_cast<IfcStructuralItem*>(in));
  1382. // this data structure is not used yet, so there is no code generated to fill its members
  1383. return base;
  1384. }
  1385. // -----------------------------------------------------------------------------------------------------------
  1386. template <> size_t GenericFill<IfcStructuralSurfaceMember>(const DB& db, const LIST& params, IfcStructuralSurfaceMember* in)
  1387. {
  1388. size_t base = GenericFill(db,params,static_cast<IfcStructuralMember*>(in));
  1389. // this data structure is not used yet, so there is no code generated to fill its members
  1390. return base;
  1391. }
  1392. // -----------------------------------------------------------------------------------------------------------
  1393. template <> size_t GenericFill<IfcStructuralSurfaceMemberVarying>(const DB& db, const LIST& params, IfcStructuralSurfaceMemberVarying* in)
  1394. {
  1395. size_t base = GenericFill(db,params,static_cast<IfcStructuralSurfaceMember*>(in));
  1396. // this data structure is not used yet, so there is no code generated to fill its members
  1397. return base;
  1398. }
  1399. // -----------------------------------------------------------------------------------------------------------
  1400. template <> size_t GenericFill<IfcBuildingElementType>(const DB& db, const LIST& params, IfcBuildingElementType* in)
  1401. {
  1402. size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in));
  1403. // this data structure is not used yet, so there is no code generated to fill its members
  1404. return base;
  1405. }
  1406. // -----------------------------------------------------------------------------------------------------------
  1407. template <> size_t GenericFill<IfcRailingType>(const DB& db, const LIST& params, IfcRailingType* in)
  1408. {
  1409. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  1410. // this data structure is not used yet, so there is no code generated to fill its members
  1411. return base;
  1412. }
  1413. // -----------------------------------------------------------------------------------------------------------
  1414. template <> size_t GenericFill<IfcColourSpecification>(const DB& db, const LIST& params, IfcColourSpecification* in)
  1415. {
  1416. size_t base = 0;
  1417. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcColourSpecification"); } do { // convert the 'Name' argument
  1418. boost::shared_ptr<const DataType> arg = params[base++];
  1419. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcColourSpecification,1>::aux_is_derived[0]=true; break; }
  1420. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1421. try { GenericConvert( in->Name, arg, db ); break; }
  1422. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcColourSpecification to be a `IfcLabel`")); }
  1423. } while(0);
  1424. return base;
  1425. }
  1426. // -----------------------------------------------------------------------------------------------------------
  1427. template <> size_t GenericFill<IfcBSplineCurve>(const DB& db, const LIST& params, IfcBSplineCurve* in)
  1428. {
  1429. size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in));
  1430. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcBSplineCurve"); } do { // convert the 'Degree' argument
  1431. boost::shared_ptr<const DataType> arg = params[base++];
  1432. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[0]=true; break; }
  1433. try { GenericConvert( in->Degree, arg, db ); break; }
  1434. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBSplineCurve to be a `INTEGER`")); }
  1435. } while(0);
  1436. do { // convert the 'ControlPointsList' argument
  1437. boost::shared_ptr<const DataType> arg = params[base++];
  1438. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[1]=true; break; }
  1439. try { GenericConvert( in->ControlPointsList, arg, db ); break; }
  1440. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBSplineCurve to be a `LIST [2:?] OF IfcCartesianPoint`")); }
  1441. } while(0);
  1442. do { // convert the 'CurveForm' argument
  1443. boost::shared_ptr<const DataType> arg = params[base++];
  1444. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[2]=true; break; }
  1445. try { GenericConvert( in->CurveForm, arg, db ); break; }
  1446. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBSplineCurve to be a `IfcBSplineCurveForm`")); }
  1447. } while(0);
  1448. do { // convert the 'ClosedCurve' argument
  1449. boost::shared_ptr<const DataType> arg = params[base++];
  1450. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[3]=true; break; }
  1451. try { GenericConvert( in->ClosedCurve, arg, db ); break; }
  1452. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcBSplineCurve to be a `LOGICAL`")); }
  1453. } while(0);
  1454. do { // convert the 'SelfIntersect' argument
  1455. boost::shared_ptr<const DataType> arg = params[base++];
  1456. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBSplineCurve,5>::aux_is_derived[4]=true; break; }
  1457. try { GenericConvert( in->SelfIntersect, arg, db ); break; }
  1458. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcBSplineCurve to be a `LOGICAL`")); }
  1459. } while(0);
  1460. return base;
  1461. }
  1462. // -----------------------------------------------------------------------------------------------------------
  1463. template <> size_t GenericFill<IfcBezierCurve>(const DB& db, const LIST& params, IfcBezierCurve* in)
  1464. {
  1465. size_t base = GenericFill(db,params,static_cast<IfcBSplineCurve*>(in));
  1466. // this data structure is not used yet, so there is no code generated to fill its members
  1467. return base;
  1468. }
  1469. // -----------------------------------------------------------------------------------------------------------
  1470. template <> size_t GenericFill<IfcRationalBezierCurve>(const DB& db, const LIST& params, IfcRationalBezierCurve* in)
  1471. {
  1472. size_t base = GenericFill(db,params,static_cast<IfcBezierCurve*>(in));
  1473. // this data structure is not used yet, so there is no code generated to fill its members
  1474. return base;
  1475. }
  1476. // -----------------------------------------------------------------------------------------------------------
  1477. template <> size_t GenericFill<IfcFlowMovingDevice>(const DB& db, const LIST& params, IfcFlowMovingDevice* in)
  1478. {
  1479. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  1480. // this data structure is not used yet, so there is no code generated to fill its members
  1481. return base;
  1482. }
  1483. // -----------------------------------------------------------------------------------------------------------
  1484. template <> size_t GenericFill<IfcOneDirectionRepeatFactor>(const DB& db, const LIST& params, IfcOneDirectionRepeatFactor* in)
  1485. {
  1486. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1487. // this data structure is not used yet, so there is no code generated to fill its members
  1488. return base;
  1489. }
  1490. // -----------------------------------------------------------------------------------------------------------
  1491. template <> size_t GenericFill<IfcTwoDirectionRepeatFactor>(const DB& db, const LIST& params, IfcTwoDirectionRepeatFactor* in)
  1492. {
  1493. size_t base = GenericFill(db,params,static_cast<IfcOneDirectionRepeatFactor*>(in));
  1494. // this data structure is not used yet, so there is no code generated to fill its members
  1495. return base;
  1496. }
  1497. // -----------------------------------------------------------------------------------------------------------
  1498. template <> size_t GenericFill<IfcCurtainWallType>(const DB& db, const LIST& params, IfcCurtainWallType* in)
  1499. {
  1500. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  1501. // this data structure is not used yet, so there is no code generated to fill its members
  1502. return base;
  1503. }
  1504. // -----------------------------------------------------------------------------------------------------------
  1505. template <> size_t GenericFill<IfcFlowStorageDeviceType>(const DB& db, const LIST& params, IfcFlowStorageDeviceType* in)
  1506. {
  1507. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  1508. // this data structure is not used yet, so there is no code generated to fill its members
  1509. return base;
  1510. }
  1511. // -----------------------------------------------------------------------------------------------------------
  1512. template <> size_t GenericFill<IfcTankType>(const DB& db, const LIST& params, IfcTankType* in)
  1513. {
  1514. size_t base = GenericFill(db,params,static_cast<IfcFlowStorageDeviceType*>(in));
  1515. // this data structure is not used yet, so there is no code generated to fill its members
  1516. return base;
  1517. }
  1518. // -----------------------------------------------------------------------------------------------------------
  1519. template <> size_t GenericFill<IfcGroup>(const DB& db, const LIST& params, IfcGroup* in)
  1520. {
  1521. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  1522. // this data structure is not used yet, so there is no code generated to fill its members
  1523. return base;
  1524. }
  1525. // -----------------------------------------------------------------------------------------------------------
  1526. template <> size_t GenericFill<IfcSystem>(const DB& db, const LIST& params, IfcSystem* in)
  1527. {
  1528. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  1529. // this data structure is not used yet, so there is no code generated to fill its members
  1530. return base;
  1531. }
  1532. // -----------------------------------------------------------------------------------------------------------
  1533. template <> size_t GenericFill<IfcStructuralAnalysisModel>(const DB& db, const LIST& params, IfcStructuralAnalysisModel* in)
  1534. {
  1535. size_t base = GenericFill(db,params,static_cast<IfcSystem*>(in));
  1536. // this data structure is not used yet, so there is no code generated to fill its members
  1537. return base;
  1538. }
  1539. // -----------------------------------------------------------------------------------------------------------
  1540. template <> size_t GenericFill<IfcStructuralConnection>(const DB& db, const LIST& params, IfcStructuralConnection* in)
  1541. {
  1542. size_t base = GenericFill(db,params,static_cast<IfcStructuralItem*>(in));
  1543. // this data structure is not used yet, so there is no code generated to fill its members
  1544. return base;
  1545. }
  1546. // -----------------------------------------------------------------------------------------------------------
  1547. template <> size_t GenericFill<IfcStructuralSurfaceConnection>(const DB& db, const LIST& params, IfcStructuralSurfaceConnection* in)
  1548. {
  1549. size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in));
  1550. // this data structure is not used yet, so there is no code generated to fill its members
  1551. return base;
  1552. }
  1553. // -----------------------------------------------------------------------------------------------------------
  1554. template <> size_t GenericFill<IfcMappedItem>(const DB& db, const LIST& params, IfcMappedItem* in)
  1555. {
  1556. size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in));
  1557. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcMappedItem"); } do { // convert the 'MappingSource' argument
  1558. boost::shared_ptr<const DataType> arg = params[base++];
  1559. try { GenericConvert( in->MappingSource, arg, db ); break; }
  1560. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcMappedItem to be a `IfcRepresentationMap`")); }
  1561. } while(0);
  1562. do { // convert the 'MappingTarget' argument
  1563. boost::shared_ptr<const DataType> arg = params[base++];
  1564. try { GenericConvert( in->MappingTarget, arg, db ); break; }
  1565. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcMappedItem to be a `IfcCartesianTransformationOperator`")); }
  1566. } while(0);
  1567. return base;
  1568. }
  1569. // -----------------------------------------------------------------------------------------------------------
  1570. template <> size_t GenericFill<IfcEnergyConversionDeviceType>(const DB& db, const LIST& params, IfcEnergyConversionDeviceType* in)
  1571. {
  1572. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  1573. // this data structure is not used yet, so there is no code generated to fill its members
  1574. return base;
  1575. }
  1576. // -----------------------------------------------------------------------------------------------------------
  1577. template <> size_t GenericFill<IfcCoilType>(const DB& db, const LIST& params, IfcCoilType* in)
  1578. {
  1579. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  1580. // this data structure is not used yet, so there is no code generated to fill its members
  1581. return base;
  1582. }
  1583. // -----------------------------------------------------------------------------------------------------------
  1584. template <> size_t GenericFill<IfcPoint>(const DB& db, const LIST& params, IfcPoint* in)
  1585. {
  1586. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1587. return base;
  1588. }
  1589. // -----------------------------------------------------------------------------------------------------------
  1590. template <> size_t GenericFill<IfcPointOnSurface>(const DB& db, const LIST& params, IfcPointOnSurface* in)
  1591. {
  1592. size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in));
  1593. // this data structure is not used yet, so there is no code generated to fill its members
  1594. return base;
  1595. }
  1596. // -----------------------------------------------------------------------------------------------------------
  1597. template <> size_t GenericFill<IfcProject>(const DB& db, const LIST& params, IfcProject* in)
  1598. {
  1599. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  1600. if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcProject"); } do { // convert the 'LongName' argument
  1601. boost::shared_ptr<const DataType> arg = params[base++];
  1602. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1603. try { GenericConvert( in->LongName, arg, db ); break; }
  1604. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcProject to be a `IfcLabel`")); }
  1605. } while(0);
  1606. do { // convert the 'Phase' argument
  1607. boost::shared_ptr<const DataType> arg = params[base++];
  1608. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1609. try { GenericConvert( in->Phase, arg, db ); break; }
  1610. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcProject to be a `IfcLabel`")); }
  1611. } while(0);
  1612. do { // convert the 'RepresentationContexts' argument
  1613. boost::shared_ptr<const DataType> arg = params[base++];
  1614. try { GenericConvert( in->RepresentationContexts, arg, db ); break; }
  1615. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcProject to be a `SET [1:?] OF IfcRepresentationContext`")); }
  1616. } while(0);
  1617. do { // convert the 'UnitsInContext' argument
  1618. boost::shared_ptr<const DataType> arg = params[base++];
  1619. try { GenericConvert( in->UnitsInContext, arg, db ); break; }
  1620. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcProject to be a `IfcUnitAssignment`")); }
  1621. } while(0);
  1622. return base;
  1623. }
  1624. // -----------------------------------------------------------------------------------------------------------
  1625. template <> size_t GenericFill<IfcActor>(const DB& db, const LIST& params, IfcActor* in)
  1626. {
  1627. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  1628. // this data structure is not used yet, so there is no code generated to fill its members
  1629. return base;
  1630. }
  1631. // -----------------------------------------------------------------------------------------------------------
  1632. template <> size_t GenericFill<IfcOccupant>(const DB& db, const LIST& params, IfcOccupant* in)
  1633. {
  1634. size_t base = GenericFill(db,params,static_cast<IfcActor*>(in));
  1635. // this data structure is not used yet, so there is no code generated to fill its members
  1636. return base;
  1637. }
  1638. // -----------------------------------------------------------------------------------------------------------
  1639. template <> size_t GenericFill<IfcRightCircularCylinder>(const DB& db, const LIST& params, IfcRightCircularCylinder* in)
  1640. {
  1641. size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in));
  1642. // this data structure is not used yet, so there is no code generated to fill its members
  1643. return base;
  1644. }
  1645. // -----------------------------------------------------------------------------------------------------------
  1646. template <> size_t GenericFill<IfcHumidifierType>(const DB& db, const LIST& params, IfcHumidifierType* in)
  1647. {
  1648. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  1649. // this data structure is not used yet, so there is no code generated to fill its members
  1650. return base;
  1651. }
  1652. // -----------------------------------------------------------------------------------------------------------
  1653. template <> size_t GenericFill<IfcProfileDef>(const DB& db, const LIST& params, IfcProfileDef* in)
  1654. {
  1655. size_t base = 0;
  1656. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcProfileDef"); } do { // convert the 'ProfileType' argument
  1657. boost::shared_ptr<const DataType> arg = params[base++];
  1658. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProfileDef,2>::aux_is_derived[0]=true; break; }
  1659. try { GenericConvert( in->ProfileType, arg, db ); break; }
  1660. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProfileDef to be a `IfcProfileTypeEnum`")); }
  1661. } while(0);
  1662. do { // convert the 'ProfileName' argument
  1663. boost::shared_ptr<const DataType> arg = params[base++];
  1664. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProfileDef,2>::aux_is_derived[1]=true; break; }
  1665. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1666. try { GenericConvert( in->ProfileName, arg, db ); break; }
  1667. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProfileDef to be a `IfcLabel`")); }
  1668. } while(0);
  1669. return base;
  1670. }
  1671. // -----------------------------------------------------------------------------------------------------------
  1672. template <> size_t GenericFill<IfcCompositeProfileDef>(const DB& db, const LIST& params, IfcCompositeProfileDef* in)
  1673. {
  1674. size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in));
  1675. // this data structure is not used yet, so there is no code generated to fill its members
  1676. return base;
  1677. }
  1678. // -----------------------------------------------------------------------------------------------------------
  1679. template <> size_t GenericFill<IfcChillerType>(const DB& db, const LIST& params, IfcChillerType* in)
  1680. {
  1681. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  1682. // this data structure is not used yet, so there is no code generated to fill its members
  1683. return base;
  1684. }
  1685. // -----------------------------------------------------------------------------------------------------------
  1686. template <> size_t GenericFill<IfcCompositeCurve>(const DB& db, const LIST& params, IfcCompositeCurve* in)
  1687. {
  1688. size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in));
  1689. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcCompositeCurve"); } do { // convert the 'Segments' argument
  1690. boost::shared_ptr<const DataType> arg = params[base++];
  1691. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCompositeCurve,2>::aux_is_derived[0]=true; break; }
  1692. try { GenericConvert( in->Segments, arg, db ); break; }
  1693. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCompositeCurve to be a `LIST [1:?] OF IfcCompositeCurveSegment`")); }
  1694. } while(0);
  1695. do { // convert the 'SelfIntersect' argument
  1696. boost::shared_ptr<const DataType> arg = params[base++];
  1697. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCompositeCurve,2>::aux_is_derived[1]=true; break; }
  1698. try { GenericConvert( in->SelfIntersect, arg, db ); break; }
  1699. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCompositeCurve to be a `LOGICAL`")); }
  1700. } while(0);
  1701. return base;
  1702. }
  1703. // -----------------------------------------------------------------------------------------------------------
  1704. template <> size_t GenericFill<Ifc2DCompositeCurve>(const DB& db, const LIST& params, Ifc2DCompositeCurve* in)
  1705. {
  1706. size_t base = GenericFill(db,params,static_cast<IfcCompositeCurve*>(in));
  1707. // this data structure is not used yet, so there is no code generated to fill its members
  1708. return base;
  1709. }
  1710. // -----------------------------------------------------------------------------------------------------------
  1711. template <> size_t GenericFill<IfcFastener>(const DB& db, const LIST& params, IfcFastener* in)
  1712. {
  1713. size_t base = GenericFill(db,params,static_cast<IfcElementComponent*>(in));
  1714. // this data structure is not used yet, so there is no code generated to fill its members
  1715. return base;
  1716. }
  1717. // -----------------------------------------------------------------------------------------------------------
  1718. template <> size_t GenericFill<IfcMechanicalFastener>(const DB& db, const LIST& params, IfcMechanicalFastener* in)
  1719. {
  1720. size_t base = GenericFill(db,params,static_cast<IfcFastener*>(in));
  1721. // this data structure is not used yet, so there is no code generated to fill its members
  1722. return base;
  1723. }
  1724. // -----------------------------------------------------------------------------------------------------------
  1725. template <> size_t GenericFill<IfcPlacement>(const DB& db, const LIST& params, IfcPlacement* in)
  1726. {
  1727. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1728. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPlacement"); } do { // convert the 'Location' argument
  1729. boost::shared_ptr<const DataType> arg = params[base++];
  1730. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcPlacement,1>::aux_is_derived[0]=true; break; }
  1731. try { GenericConvert( in->Location, arg, db ); break; }
  1732. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPlacement to be a `IfcCartesianPoint`")); }
  1733. } while(0);
  1734. return base;
  1735. }
  1736. // -----------------------------------------------------------------------------------------------------------
  1737. template <> size_t GenericFill<IfcAxis1Placement>(const DB& db, const LIST& params, IfcAxis1Placement* in)
  1738. {
  1739. size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in));
  1740. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcAxis1Placement"); } do { // convert the 'Axis' argument
  1741. boost::shared_ptr<const DataType> arg = params[base++];
  1742. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1743. try { GenericConvert( in->Axis, arg, db ); break; }
  1744. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis1Placement to be a `IfcDirection`")); }
  1745. } while(0);
  1746. return base;
  1747. }
  1748. // -----------------------------------------------------------------------------------------------------------
  1749. template <> size_t GenericFill<IfcCartesianTransformationOperator>(const DB& db, const LIST& params, IfcCartesianTransformationOperator* in)
  1750. {
  1751. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1752. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcCartesianTransformationOperator"); } do { // convert the 'Axis1' argument
  1753. boost::shared_ptr<const DataType> arg = params[base++];
  1754. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[0]=true; break; }
  1755. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1756. try { GenericConvert( in->Axis1, arg, db ); break; }
  1757. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCartesianTransformationOperator to be a `IfcDirection`")); }
  1758. } while(0);
  1759. do { // convert the 'Axis2' argument
  1760. boost::shared_ptr<const DataType> arg = params[base++];
  1761. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[1]=true; break; }
  1762. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1763. try { GenericConvert( in->Axis2, arg, db ); break; }
  1764. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCartesianTransformationOperator to be a `IfcDirection`")); }
  1765. } while(0);
  1766. do { // convert the 'LocalOrigin' argument
  1767. boost::shared_ptr<const DataType> arg = params[base++];
  1768. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[2]=true; break; }
  1769. try { GenericConvert( in->LocalOrigin, arg, db ); break; }
  1770. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcCartesianTransformationOperator to be a `IfcCartesianPoint`")); }
  1771. } while(0);
  1772. do { // convert the 'Scale' argument
  1773. boost::shared_ptr<const DataType> arg = params[base++];
  1774. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator,4>::aux_is_derived[3]=true; break; }
  1775. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1776. try { GenericConvert( in->Scale, arg, db ); break; }
  1777. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcCartesianTransformationOperator to be a `REAL`")); }
  1778. } while(0);
  1779. return base;
  1780. }
  1781. // -----------------------------------------------------------------------------------------------------------
  1782. template <> size_t GenericFill<IfcFlowControllerType>(const DB& db, const LIST& params, IfcFlowControllerType* in)
  1783. {
  1784. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  1785. // this data structure is not used yet, so there is no code generated to fill its members
  1786. return base;
  1787. }
  1788. // -----------------------------------------------------------------------------------------------------------
  1789. template <> size_t GenericFill<IfcSwitchingDeviceType>(const DB& db, const LIST& params, IfcSwitchingDeviceType* in)
  1790. {
  1791. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  1792. // this data structure is not used yet, so there is no code generated to fill its members
  1793. return base;
  1794. }
  1795. // -----------------------------------------------------------------------------------------------------------
  1796. template <> size_t GenericFill<IfcGeometricSet>(const DB& db, const LIST& params, IfcGeometricSet* in)
  1797. {
  1798. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1799. // this data structure is not used yet, so there is no code generated to fill its members
  1800. return base;
  1801. }
  1802. // -----------------------------------------------------------------------------------------------------------
  1803. template <> size_t GenericFill<IfcGeometricCurveSet>(const DB& db, const LIST& params, IfcGeometricCurveSet* in)
  1804. {
  1805. size_t base = GenericFill(db,params,static_cast<IfcGeometricSet*>(in));
  1806. // this data structure is not used yet, so there is no code generated to fill its members
  1807. return base;
  1808. }
  1809. // -----------------------------------------------------------------------------------------------------------
  1810. template <> size_t GenericFill<IfcFlowSegmentType>(const DB& db, const LIST& params, IfcFlowSegmentType* in)
  1811. {
  1812. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  1813. // this data structure is not used yet, so there is no code generated to fill its members
  1814. return base;
  1815. }
  1816. // -----------------------------------------------------------------------------------------------------------
  1817. template <> size_t GenericFill<IfcCableCarrierSegmentType>(const DB& db, const LIST& params, IfcCableCarrierSegmentType* in)
  1818. {
  1819. size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in));
  1820. // this data structure is not used yet, so there is no code generated to fill its members
  1821. return base;
  1822. }
  1823. // -----------------------------------------------------------------------------------------------------------
  1824. template <> size_t GenericFill<IfcAnnotationSurface>(const DB& db, const LIST& params, IfcAnnotationSurface* in)
  1825. {
  1826. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1827. // this data structure is not used yet, so there is no code generated to fill its members
  1828. return base;
  1829. }
  1830. // -----------------------------------------------------------------------------------------------------------
  1831. template <> size_t GenericFill<IfcTopologicalRepresentationItem>(const DB& db, const LIST& params, IfcTopologicalRepresentationItem* in)
  1832. {
  1833. size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in));
  1834. return base;
  1835. }
  1836. // -----------------------------------------------------------------------------------------------------------
  1837. template <> size_t GenericFill<IfcLoop>(const DB& db, const LIST& params, IfcLoop* in)
  1838. {
  1839. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  1840. return base;
  1841. }
  1842. // -----------------------------------------------------------------------------------------------------------
  1843. template <> size_t GenericFill<IfcPolyLoop>(const DB& db, const LIST& params, IfcPolyLoop* in)
  1844. {
  1845. size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in));
  1846. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPolyLoop"); } do { // convert the 'Polygon' argument
  1847. boost::shared_ptr<const DataType> arg = params[base++];
  1848. try { GenericConvert( in->Polygon, arg, db ); break; }
  1849. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPolyLoop to be a `LIST [3:?] OF IfcCartesianPoint`")); }
  1850. } while(0);
  1851. return base;
  1852. }
  1853. // -----------------------------------------------------------------------------------------------------------
  1854. template <> size_t GenericFill<IfcConnectedFaceSet>(const DB& db, const LIST& params, IfcConnectedFaceSet* in)
  1855. {
  1856. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  1857. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcConnectedFaceSet"); } do { // convert the 'CfsFaces' argument
  1858. boost::shared_ptr<const DataType> arg = params[base++];
  1859. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcConnectedFaceSet,1>::aux_is_derived[0]=true; break; }
  1860. try { GenericConvert( in->CfsFaces, arg, db ); break; }
  1861. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcConnectedFaceSet to be a `SET [1:?] OF IfcFace`")); }
  1862. } while(0);
  1863. return base;
  1864. }
  1865. // -----------------------------------------------------------------------------------------------------------
  1866. template <> size_t GenericFill<IfcOpenShell>(const DB& db, const LIST& params, IfcOpenShell* in)
  1867. {
  1868. size_t base = GenericFill(db,params,static_cast<IfcConnectedFaceSet*>(in));
  1869. // this data structure is not used yet, so there is no code generated to fill its members
  1870. return base;
  1871. }
  1872. // -----------------------------------------------------------------------------------------------------------
  1873. template <> size_t GenericFill<IfcRepresentationContext>(const DB& db, const LIST& params, IfcRepresentationContext* in)
  1874. {
  1875. size_t base = 0;
  1876. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcRepresentationContext"); } do { // convert the 'ContextIdentifier' argument
  1877. boost::shared_ptr<const DataType> arg = params[base++];
  1878. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentationContext,2>::aux_is_derived[0]=true; break; }
  1879. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1880. try { GenericConvert( in->ContextIdentifier, arg, db ); break; }
  1881. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentationContext to be a `IfcLabel`")); }
  1882. } while(0);
  1883. do { // convert the 'ContextType' argument
  1884. boost::shared_ptr<const DataType> arg = params[base++];
  1885. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentationContext,2>::aux_is_derived[1]=true; break; }
  1886. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1887. try { GenericConvert( in->ContextType, arg, db ); break; }
  1888. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentationContext to be a `IfcLabel`")); }
  1889. } while(0);
  1890. return base;
  1891. }
  1892. // -----------------------------------------------------------------------------------------------------------
  1893. template <> size_t GenericFill<IfcNamedUnit>(const DB& db, const LIST& params, IfcNamedUnit* in)
  1894. {
  1895. size_t base = 0;
  1896. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcNamedUnit"); } do { // convert the 'Dimensions' argument
  1897. boost::shared_ptr<const DataType> arg = params[base++];
  1898. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcNamedUnit,2>::aux_is_derived[0]=true; break; }
  1899. try { GenericConvert( in->Dimensions, arg, db ); break; }
  1900. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcNamedUnit to be a `IfcDimensionalExponents`")); }
  1901. } while(0);
  1902. do { // convert the 'UnitType' argument
  1903. boost::shared_ptr<const DataType> arg = params[base++];
  1904. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcNamedUnit,2>::aux_is_derived[1]=true; break; }
  1905. try { GenericConvert( in->UnitType, arg, db ); break; }
  1906. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcNamedUnit to be a `IfcUnitEnum`")); }
  1907. } while(0);
  1908. return base;
  1909. }
  1910. // -----------------------------------------------------------------------------------------------------------
  1911. template <> size_t GenericFill<IfcRepresentation>(const DB& db, const LIST& params, IfcRepresentation* in)
  1912. {
  1913. size_t base = 0;
  1914. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRepresentation"); } do { // convert the 'ContextOfItems' argument
  1915. boost::shared_ptr<const DataType> arg = params[base++];
  1916. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[0]=true; break; }
  1917. try { GenericConvert( in->ContextOfItems, arg, db ); break; }
  1918. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentation to be a `IfcRepresentationContext`")); }
  1919. } while(0);
  1920. do { // convert the 'RepresentationIdentifier' argument
  1921. boost::shared_ptr<const DataType> arg = params[base++];
  1922. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[1]=true; break; }
  1923. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1924. try { GenericConvert( in->RepresentationIdentifier, arg, db ); break; }
  1925. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentation to be a `IfcLabel`")); }
  1926. } while(0);
  1927. do { // convert the 'RepresentationType' argument
  1928. boost::shared_ptr<const DataType> arg = params[base++];
  1929. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[2]=true; break; }
  1930. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1931. try { GenericConvert( in->RepresentationType, arg, db ); break; }
  1932. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRepresentation to be a `IfcLabel`")); }
  1933. } while(0);
  1934. do { // convert the 'Items' argument
  1935. boost::shared_ptr<const DataType> arg = params[base++];
  1936. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRepresentation,4>::aux_is_derived[3]=true; break; }
  1937. try { GenericConvert( in->Items, arg, db ); break; }
  1938. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRepresentation to be a `SET [1:?] OF IfcRepresentationItem`")); }
  1939. } while(0);
  1940. return base;
  1941. }
  1942. // -----------------------------------------------------------------------------------------------------------
  1943. template <> size_t GenericFill<IfcLightSource>(const DB& db, const LIST& params, IfcLightSource* in)
  1944. {
  1945. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1946. // this data structure is not used yet, so there is no code generated to fill its members
  1947. return base;
  1948. }
  1949. // -----------------------------------------------------------------------------------------------------------
  1950. template <> size_t GenericFill<IfcProjectOrderRecord>(const DB& db, const LIST& params, IfcProjectOrderRecord* in)
  1951. {
  1952. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  1953. // this data structure is not used yet, so there is no code generated to fill its members
  1954. return base;
  1955. }
  1956. // -----------------------------------------------------------------------------------------------------------
  1957. template <> size_t GenericFill<IfcSpaceProgram>(const DB& db, const LIST& params, IfcSpaceProgram* in)
  1958. {
  1959. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  1960. // this data structure is not used yet, so there is no code generated to fill its members
  1961. return base;
  1962. }
  1963. // -----------------------------------------------------------------------------------------------------------
  1964. template <> size_t GenericFill<IfcDraughtingCallout>(const DB& db, const LIST& params, IfcDraughtingCallout* in)
  1965. {
  1966. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  1967. // this data structure is not used yet, so there is no code generated to fill its members
  1968. return base;
  1969. }
  1970. // -----------------------------------------------------------------------------------------------------------
  1971. template <> size_t GenericFill<IfcDimensionCurveDirectedCallout>(const DB& db, const LIST& params, IfcDimensionCurveDirectedCallout* in)
  1972. {
  1973. size_t base = GenericFill(db,params,static_cast<IfcDraughtingCallout*>(in));
  1974. // this data structure is not used yet, so there is no code generated to fill its members
  1975. return base;
  1976. }
  1977. // -----------------------------------------------------------------------------------------------------------
  1978. template <> size_t GenericFill<IfcDiameterDimension>(const DB& db, const LIST& params, IfcDiameterDimension* in)
  1979. {
  1980. size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in));
  1981. // this data structure is not used yet, so there is no code generated to fill its members
  1982. return base;
  1983. }
  1984. // -----------------------------------------------------------------------------------------------------------
  1985. template <> size_t GenericFill<IfcStyledItem>(const DB& db, const LIST& params, IfcStyledItem* in)
  1986. {
  1987. size_t base = GenericFill(db,params,static_cast<IfcRepresentationItem*>(in));
  1988. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcStyledItem"); } do { // convert the 'Item' argument
  1989. boost::shared_ptr<const DataType> arg = params[base++];
  1990. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[0]=true; break; }
  1991. if (dynamic_cast<const UNSET*>(&*arg)) break;
  1992. try { GenericConvert( in->Item, arg, db ); break; }
  1993. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcStyledItem to be a `IfcRepresentationItem`")); }
  1994. } while(0);
  1995. do { // convert the 'Styles' argument
  1996. boost::shared_ptr<const DataType> arg = params[base++];
  1997. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[1]=true; break; }
  1998. try { GenericConvert( in->Styles, arg, db ); break; }
  1999. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcStyledItem to be a `SET [1:?] OF IfcPresentationStyleAssignment`")); }
  2000. } while(0);
  2001. do { // convert the 'Name' argument
  2002. boost::shared_ptr<const DataType> arg = params[base++];
  2003. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcStyledItem,3>::aux_is_derived[2]=true; break; }
  2004. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2005. try { GenericConvert( in->Name, arg, db ); break; }
  2006. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcStyledItem to be a `IfcLabel`")); }
  2007. } while(0);
  2008. return base;
  2009. }
  2010. // -----------------------------------------------------------------------------------------------------------
  2011. template <> size_t GenericFill<IfcAnnotationOccurrence>(const DB& db, const LIST& params, IfcAnnotationOccurrence* in)
  2012. {
  2013. size_t base = GenericFill(db,params,static_cast<IfcStyledItem*>(in));
  2014. // this data structure is not used yet, so there is no code generated to fill its members
  2015. return base;
  2016. }
  2017. // -----------------------------------------------------------------------------------------------------------
  2018. template <> size_t GenericFill<IfcAnnotationTextOccurrence>(const DB& db, const LIST& params, IfcAnnotationTextOccurrence* in)
  2019. {
  2020. size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in));
  2021. // this data structure is not used yet, so there is no code generated to fill its members
  2022. return base;
  2023. }
  2024. // -----------------------------------------------------------------------------------------------------------
  2025. template <> size_t GenericFill<IfcWall>(const DB& db, const LIST& params, IfcWall* in)
  2026. {
  2027. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  2028. // this data structure is not used yet, so there is no code generated to fill its members
  2029. return base;
  2030. }
  2031. // -----------------------------------------------------------------------------------------------------------
  2032. template <> size_t GenericFill<IfcProcess>(const DB& db, const LIST& params, IfcProcess* in)
  2033. {
  2034. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  2035. // this data structure is not used yet, so there is no code generated to fill its members
  2036. return base;
  2037. }
  2038. // -----------------------------------------------------------------------------------------------------------
  2039. template <> size_t GenericFill<IfcTask>(const DB& db, const LIST& params, IfcTask* in)
  2040. {
  2041. size_t base = GenericFill(db,params,static_cast<IfcProcess*>(in));
  2042. // this data structure is not used yet, so there is no code generated to fill its members
  2043. return base;
  2044. }
  2045. // -----------------------------------------------------------------------------------------------------------
  2046. template <> size_t GenericFill<IfcMove>(const DB& db, const LIST& params, IfcMove* in)
  2047. {
  2048. size_t base = GenericFill(db,params,static_cast<IfcTask*>(in));
  2049. // this data structure is not used yet, so there is no code generated to fill its members
  2050. return base;
  2051. }
  2052. // -----------------------------------------------------------------------------------------------------------
  2053. template <> size_t GenericFill<IfcColumn>(const DB& db, const LIST& params, IfcColumn* in)
  2054. {
  2055. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  2056. // this data structure is not used yet, so there is no code generated to fill its members
  2057. return base;
  2058. }
  2059. // -----------------------------------------------------------------------------------------------------------
  2060. template <> size_t GenericFill<IfcWallStandardCase>(const DB& db, const LIST& params, IfcWallStandardCase* in)
  2061. {
  2062. size_t base = GenericFill(db,params,static_cast<IfcWall*>(in));
  2063. // this data structure is not used yet, so there is no code generated to fill its members
  2064. return base;
  2065. }
  2066. // -----------------------------------------------------------------------------------------------------------
  2067. template <> size_t GenericFill<IfcEdge>(const DB& db, const LIST& params, IfcEdge* in)
  2068. {
  2069. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  2070. // this data structure is not used yet, so there is no code generated to fill its members
  2071. return base;
  2072. }
  2073. // -----------------------------------------------------------------------------------------------------------
  2074. template <> size_t GenericFill<IfcManifoldSolidBrep>(const DB& db, const LIST& params, IfcManifoldSolidBrep* in)
  2075. {
  2076. size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in));
  2077. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcManifoldSolidBrep"); } do { // convert the 'Outer' argument
  2078. boost::shared_ptr<const DataType> arg = params[base++];
  2079. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcManifoldSolidBrep,1>::aux_is_derived[0]=true; break; }
  2080. try { GenericConvert( in->Outer, arg, db ); break; }
  2081. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcManifoldSolidBrep to be a `IfcClosedShell`")); }
  2082. } while(0);
  2083. return base;
  2084. }
  2085. // -----------------------------------------------------------------------------------------------------------
  2086. template <> size_t GenericFill<IfcFacetedBrepWithVoids>(const DB& db, const LIST& params, IfcFacetedBrepWithVoids* in)
  2087. {
  2088. size_t base = GenericFill(db,params,static_cast<IfcManifoldSolidBrep*>(in));
  2089. // this data structure is not used yet, so there is no code generated to fill its members
  2090. return base;
  2091. }
  2092. // -----------------------------------------------------------------------------------------------------------
  2093. template <> size_t GenericFill<IfcShapeModel>(const DB& db, const LIST& params, IfcShapeModel* in)
  2094. {
  2095. size_t base = GenericFill(db,params,static_cast<IfcRepresentation*>(in));
  2096. // this data structure is not used yet, so there is no code generated to fill its members
  2097. return base;
  2098. }
  2099. // -----------------------------------------------------------------------------------------------------------
  2100. template <> size_t GenericFill<IfcTopologyRepresentation>(const DB& db, const LIST& params, IfcTopologyRepresentation* in)
  2101. {
  2102. size_t base = GenericFill(db,params,static_cast<IfcShapeModel*>(in));
  2103. // this data structure is not used yet, so there is no code generated to fill its members
  2104. return base;
  2105. }
  2106. // -----------------------------------------------------------------------------------------------------------
  2107. template <> size_t GenericFill<IfcStructuralActivity>(const DB& db, const LIST& params, IfcStructuralActivity* in)
  2108. {
  2109. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  2110. // this data structure is not used yet, so there is no code generated to fill its members
  2111. return base;
  2112. }
  2113. // -----------------------------------------------------------------------------------------------------------
  2114. template <> size_t GenericFill<IfcParameterizedProfileDef>(const DB& db, const LIST& params, IfcParameterizedProfileDef* in)
  2115. {
  2116. size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in));
  2117. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcParameterizedProfileDef"); } do { // convert the 'Position' argument
  2118. boost::shared_ptr<const DataType> arg = params[base++];
  2119. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcParameterizedProfileDef,1>::aux_is_derived[0]=true; break; }
  2120. try { GenericConvert( in->Position, arg, db ); break; }
  2121. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcParameterizedProfileDef to be a `IfcAxis2Placement2D`")); }
  2122. } while(0);
  2123. return base;
  2124. }
  2125. // -----------------------------------------------------------------------------------------------------------
  2126. template <> size_t GenericFill<IfcCircleProfileDef>(const DB& db, const LIST& params, IfcCircleProfileDef* in)
  2127. {
  2128. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2129. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcCircleProfileDef"); } do { // convert the 'Radius' argument
  2130. boost::shared_ptr<const DataType> arg = params[base++];
  2131. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCircleProfileDef,1>::aux_is_derived[0]=true; break; }
  2132. try { GenericConvert( in->Radius, arg, db ); break; }
  2133. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcCircleProfileDef to be a `IfcPositiveLengthMeasure`")); }
  2134. } while(0);
  2135. return base;
  2136. }
  2137. // -----------------------------------------------------------------------------------------------------------
  2138. template <> size_t GenericFill<IfcCircleHollowProfileDef>(const DB& db, const LIST& params, IfcCircleHollowProfileDef* in)
  2139. {
  2140. size_t base = GenericFill(db,params,static_cast<IfcCircleProfileDef*>(in));
  2141. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcCircleHollowProfileDef"); } do { // convert the 'WallThickness' argument
  2142. boost::shared_ptr<const DataType> arg = params[base++];
  2143. try { GenericConvert( in->WallThickness, arg, db ); break; }
  2144. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcCircleHollowProfileDef to be a `IfcPositiveLengthMeasure`")); }
  2145. } while(0);
  2146. return base;
  2147. }
  2148. // -----------------------------------------------------------------------------------------------------------
  2149. template <> size_t GenericFill<IfcCraneRailFShapeProfileDef>(const DB& db, const LIST& params, IfcCraneRailFShapeProfileDef* in)
  2150. {
  2151. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2152. // this data structure is not used yet, so there is no code generated to fill its members
  2153. return base;
  2154. }
  2155. // -----------------------------------------------------------------------------------------------------------
  2156. template <> size_t GenericFill<IfcPort>(const DB& db, const LIST& params, IfcPort* in)
  2157. {
  2158. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  2159. // this data structure is not used yet, so there is no code generated to fill its members
  2160. return base;
  2161. }
  2162. // -----------------------------------------------------------------------------------------------------------
  2163. template <> size_t GenericFill<IfcDistributionPort>(const DB& db, const LIST& params, IfcDistributionPort* in)
  2164. {
  2165. size_t base = GenericFill(db,params,static_cast<IfcPort*>(in));
  2166. // this data structure is not used yet, so there is no code generated to fill its members
  2167. return base;
  2168. }
  2169. // -----------------------------------------------------------------------------------------------------------
  2170. template <> size_t GenericFill<IfcFlowTerminalType>(const DB& db, const LIST& params, IfcFlowTerminalType* in)
  2171. {
  2172. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  2173. // this data structure is not used yet, so there is no code generated to fill its members
  2174. return base;
  2175. }
  2176. // -----------------------------------------------------------------------------------------------------------
  2177. template <> size_t GenericFill<IfcGasTerminalType>(const DB& db, const LIST& params, IfcGasTerminalType* in)
  2178. {
  2179. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  2180. // this data structure is not used yet, so there is no code generated to fill its members
  2181. return base;
  2182. }
  2183. // -----------------------------------------------------------------------------------------------------------
  2184. template <> size_t GenericFill<IfcAnnotationCurveOccurrence>(const DB& db, const LIST& params, IfcAnnotationCurveOccurrence* in)
  2185. {
  2186. size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in));
  2187. // this data structure is not used yet, so there is no code generated to fill its members
  2188. return base;
  2189. }
  2190. // -----------------------------------------------------------------------------------------------------------
  2191. template <> size_t GenericFill<IfcProjectionCurve>(const DB& db, const LIST& params, IfcProjectionCurve* in)
  2192. {
  2193. size_t base = GenericFill(db,params,static_cast<IfcAnnotationCurveOccurrence*>(in));
  2194. // this data structure is not used yet, so there is no code generated to fill its members
  2195. return base;
  2196. }
  2197. // -----------------------------------------------------------------------------------------------------------
  2198. template <> size_t GenericFill<IfcElectricGeneratorType>(const DB& db, const LIST& params, IfcElectricGeneratorType* in)
  2199. {
  2200. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  2201. // this data structure is not used yet, so there is no code generated to fill its members
  2202. return base;
  2203. }
  2204. // -----------------------------------------------------------------------------------------------------------
  2205. template <> size_t GenericFill<IfcRevolvedAreaSolid>(const DB& db, const LIST& params, IfcRevolvedAreaSolid* in)
  2206. {
  2207. size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in));
  2208. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcRevolvedAreaSolid"); } do { // convert the 'Axis' argument
  2209. boost::shared_ptr<const DataType> arg = params[base++];
  2210. try { GenericConvert( in->Axis, arg, db ); break; }
  2211. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcRevolvedAreaSolid to be a `IfcAxis1Placement`")); }
  2212. } while(0);
  2213. do { // convert the 'Angle' argument
  2214. boost::shared_ptr<const DataType> arg = params[base++];
  2215. try { GenericConvert( in->Angle, arg, db ); break; }
  2216. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRevolvedAreaSolid to be a `IfcPlaneAngleMeasure`")); }
  2217. } while(0);
  2218. return base;
  2219. }
  2220. // -----------------------------------------------------------------------------------------------------------
  2221. template <> size_t GenericFill<IfcCartesianTransformationOperator3D>(const DB& db, const LIST& params, IfcCartesianTransformationOperator3D* in)
  2222. {
  2223. size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator*>(in));
  2224. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcCartesianTransformationOperator3D"); } do { // convert the 'Axis3' argument
  2225. boost::shared_ptr<const DataType> arg = params[base++];
  2226. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcCartesianTransformationOperator3D,1>::aux_is_derived[0]=true; break; }
  2227. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2228. try { GenericConvert( in->Axis3, arg, db ); break; }
  2229. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcCartesianTransformationOperator3D to be a `IfcDirection`")); }
  2230. } while(0);
  2231. return base;
  2232. }
  2233. // -----------------------------------------------------------------------------------------------------------
  2234. template <> size_t GenericFill<IfcBuildingElementProxyType>(const DB& db, const LIST& params, IfcBuildingElementProxyType* in)
  2235. {
  2236. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  2237. // this data structure is not used yet, so there is no code generated to fill its members
  2238. return base;
  2239. }
  2240. // -----------------------------------------------------------------------------------------------------------
  2241. template <> size_t GenericFill<IfcFlowMovingDeviceType>(const DB& db, const LIST& params, IfcFlowMovingDeviceType* in)
  2242. {
  2243. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  2244. // this data structure is not used yet, so there is no code generated to fill its members
  2245. return base;
  2246. }
  2247. // -----------------------------------------------------------------------------------------------------------
  2248. template <> size_t GenericFill<IfcPumpType>(const DB& db, const LIST& params, IfcPumpType* in)
  2249. {
  2250. size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in));
  2251. // this data structure is not used yet, so there is no code generated to fill its members
  2252. return base;
  2253. }
  2254. // -----------------------------------------------------------------------------------------------------------
  2255. template <> size_t GenericFill<IfcWorkControl>(const DB& db, const LIST& params, IfcWorkControl* in)
  2256. {
  2257. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  2258. // this data structure is not used yet, so there is no code generated to fill its members
  2259. return base;
  2260. }
  2261. // -----------------------------------------------------------------------------------------------------------
  2262. template <> size_t GenericFill<IfcWorkPlan>(const DB& db, const LIST& params, IfcWorkPlan* in)
  2263. {
  2264. size_t base = GenericFill(db,params,static_cast<IfcWorkControl*>(in));
  2265. // this data structure is not used yet, so there is no code generated to fill its members
  2266. return base;
  2267. }
  2268. // -----------------------------------------------------------------------------------------------------------
  2269. template <> size_t GenericFill<IfcArbitraryOpenProfileDef>(const DB& db, const LIST& params, IfcArbitraryOpenProfileDef* in)
  2270. {
  2271. size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in));
  2272. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcArbitraryOpenProfileDef"); } do { // convert the 'Curve' argument
  2273. boost::shared_ptr<const DataType> arg = params[base++];
  2274. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcArbitraryOpenProfileDef,1>::aux_is_derived[0]=true; break; }
  2275. try { GenericConvert( in->Curve, arg, db ); break; }
  2276. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcArbitraryOpenProfileDef to be a `IfcBoundedCurve`")); }
  2277. } while(0);
  2278. return base;
  2279. }
  2280. // -----------------------------------------------------------------------------------------------------------
  2281. template <> size_t GenericFill<IfcCenterLineProfileDef>(const DB& db, const LIST& params, IfcCenterLineProfileDef* in)
  2282. {
  2283. size_t base = GenericFill(db,params,static_cast<IfcArbitraryOpenProfileDef*>(in));
  2284. // this data structure is not used yet, so there is no code generated to fill its members
  2285. return base;
  2286. }
  2287. // -----------------------------------------------------------------------------------------------------------
  2288. template <> size_t GenericFill<IfcConic>(const DB& db, const LIST& params, IfcConic* in)
  2289. {
  2290. size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in));
  2291. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcConic"); } do { // convert the 'Position' argument
  2292. boost::shared_ptr<const DataType> arg = params[base++];
  2293. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcConic,1>::aux_is_derived[0]=true; break; }
  2294. try { GenericConvert( in->Position, arg, db ); break; }
  2295. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcConic to be a `IfcAxis2Placement`")); }
  2296. } while(0);
  2297. return base;
  2298. }
  2299. // -----------------------------------------------------------------------------------------------------------
  2300. template <> size_t GenericFill<IfcFlowFittingType>(const DB& db, const LIST& params, IfcFlowFittingType* in)
  2301. {
  2302. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  2303. // this data structure is not used yet, so there is no code generated to fill its members
  2304. return base;
  2305. }
  2306. // -----------------------------------------------------------------------------------------------------------
  2307. template <> size_t GenericFill<IfcPipeFittingType>(const DB& db, const LIST& params, IfcPipeFittingType* in)
  2308. {
  2309. size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in));
  2310. // this data structure is not used yet, so there is no code generated to fill its members
  2311. return base;
  2312. }
  2313. // -----------------------------------------------------------------------------------------------------------
  2314. template <> size_t GenericFill<IfcUShapeProfileDef>(const DB& db, const LIST& params, IfcUShapeProfileDef* in)
  2315. {
  2316. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2317. // this data structure is not used yet, so there is no code generated to fill its members
  2318. return base;
  2319. }
  2320. // -----------------------------------------------------------------------------------------------------------
  2321. template <> size_t GenericFill<IfcPermit>(const DB& db, const LIST& params, IfcPermit* in)
  2322. {
  2323. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  2324. // this data structure is not used yet, so there is no code generated to fill its members
  2325. return base;
  2326. }
  2327. // -----------------------------------------------------------------------------------------------------------
  2328. template <> size_t GenericFill<IfcCsgSolid>(const DB& db, const LIST& params, IfcCsgSolid* in)
  2329. {
  2330. size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in));
  2331. // this data structure is not used yet, so there is no code generated to fill its members
  2332. return base;
  2333. }
  2334. // -----------------------------------------------------------------------------------------------------------
  2335. template <> size_t GenericFill<IfcInventory>(const DB& db, const LIST& params, IfcInventory* in)
  2336. {
  2337. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  2338. // this data structure is not used yet, so there is no code generated to fill its members
  2339. return base;
  2340. }
  2341. // -----------------------------------------------------------------------------------------------------------
  2342. template <> size_t GenericFill<IfcFeatureElement>(const DB& db, const LIST& params, IfcFeatureElement* in)
  2343. {
  2344. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  2345. if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcFeatureElement"); } return base;
  2346. }
  2347. // -----------------------------------------------------------------------------------------------------------
  2348. template <> size_t GenericFill<IfcFeatureElementSubtraction>(const DB& db, const LIST& params, IfcFeatureElementSubtraction* in)
  2349. {
  2350. size_t base = GenericFill(db,params,static_cast<IfcFeatureElement*>(in));
  2351. if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcFeatureElementSubtraction"); } return base;
  2352. }
  2353. // -----------------------------------------------------------------------------------------------------------
  2354. template <> size_t GenericFill<IfcEdgeFeature>(const DB& db, const LIST& params, IfcEdgeFeature* in)
  2355. {
  2356. size_t base = GenericFill(db,params,static_cast<IfcFeatureElementSubtraction*>(in));
  2357. // this data structure is not used yet, so there is no code generated to fill its members
  2358. return base;
  2359. }
  2360. // -----------------------------------------------------------------------------------------------------------
  2361. template <> size_t GenericFill<IfcRoundedEdgeFeature>(const DB& db, const LIST& params, IfcRoundedEdgeFeature* in)
  2362. {
  2363. size_t base = GenericFill(db,params,static_cast<IfcEdgeFeature*>(in));
  2364. // this data structure is not used yet, so there is no code generated to fill its members
  2365. return base;
  2366. }
  2367. // -----------------------------------------------------------------------------------------------------------
  2368. template <> size_t GenericFill<IfcHalfSpaceSolid>(const DB& db, const LIST& params, IfcHalfSpaceSolid* in)
  2369. {
  2370. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  2371. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcHalfSpaceSolid"); } do { // convert the 'BaseSurface' argument
  2372. boost::shared_ptr<const DataType> arg = params[base++];
  2373. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcHalfSpaceSolid,2>::aux_is_derived[0]=true; break; }
  2374. try { GenericConvert( in->BaseSurface, arg, db ); break; }
  2375. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcHalfSpaceSolid to be a `IfcSurface`")); }
  2376. } while(0);
  2377. do { // convert the 'AgreementFlag' argument
  2378. boost::shared_ptr<const DataType> arg = params[base++];
  2379. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcHalfSpaceSolid,2>::aux_is_derived[1]=true; break; }
  2380. try { GenericConvert( in->AgreementFlag, arg, db ); break; }
  2381. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcHalfSpaceSolid to be a `BOOLEAN`")); }
  2382. } while(0);
  2383. return base;
  2384. }
  2385. // -----------------------------------------------------------------------------------------------------------
  2386. template <> size_t GenericFill<IfcSpatialStructureElement>(const DB& db, const LIST& params, IfcSpatialStructureElement* in)
  2387. {
  2388. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  2389. if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcSpatialStructureElement"); } do { // convert the 'LongName' argument
  2390. boost::shared_ptr<const DataType> arg = params[base++];
  2391. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSpatialStructureElement,2>::aux_is_derived[0]=true; break; }
  2392. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2393. try { GenericConvert( in->LongName, arg, db ); break; }
  2394. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcSpatialStructureElement to be a `IfcLabel`")); }
  2395. } while(0);
  2396. do { // convert the 'CompositionType' argument
  2397. boost::shared_ptr<const DataType> arg = params[base++];
  2398. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSpatialStructureElement,2>::aux_is_derived[1]=true; break; }
  2399. try { GenericConvert( in->CompositionType, arg, db ); break; }
  2400. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSpatialStructureElement to be a `IfcElementCompositionEnum`")); }
  2401. } while(0);
  2402. return base;
  2403. }
  2404. // -----------------------------------------------------------------------------------------------------------
  2405. template <> size_t GenericFill<IfcBuilding>(const DB& db, const LIST& params, IfcBuilding* in)
  2406. {
  2407. size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in));
  2408. if (params.GetSize() < 12) { throw STEP::TypeError("expected 12 arguments to IfcBuilding"); } do { // convert the 'ElevationOfRefHeight' argument
  2409. boost::shared_ptr<const DataType> arg = params[base++];
  2410. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2411. try { GenericConvert( in->ElevationOfRefHeight, arg, db ); break; }
  2412. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcBuilding to be a `IfcLengthMeasure`")); }
  2413. } while(0);
  2414. do { // convert the 'ElevationOfTerrain' argument
  2415. boost::shared_ptr<const DataType> arg = params[base++];
  2416. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2417. try { GenericConvert( in->ElevationOfTerrain, arg, db ); break; }
  2418. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcBuilding to be a `IfcLengthMeasure`")); }
  2419. } while(0);
  2420. do { // convert the 'BuildingAddress' argument
  2421. boost::shared_ptr<const DataType> arg = params[base++];
  2422. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2423. try { GenericConvert( in->BuildingAddress, arg, db ); break; }
  2424. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 11 to IfcBuilding to be a `IfcPostalAddress`")); }
  2425. } while(0);
  2426. return base;
  2427. }
  2428. // -----------------------------------------------------------------------------------------------------------
  2429. template <> size_t GenericFill<IfcRectangleProfileDef>(const DB& db, const LIST& params, IfcRectangleProfileDef* in)
  2430. {
  2431. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2432. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcRectangleProfileDef"); } do { // convert the 'XDim' argument
  2433. boost::shared_ptr<const DataType> arg = params[base++];
  2434. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRectangleProfileDef,2>::aux_is_derived[0]=true; break; }
  2435. try { GenericConvert( in->XDim, arg, db ); break; }
  2436. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcRectangleProfileDef to be a `IfcPositiveLengthMeasure`")); }
  2437. } while(0);
  2438. do { // convert the 'YDim' argument
  2439. boost::shared_ptr<const DataType> arg = params[base++];
  2440. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRectangleProfileDef,2>::aux_is_derived[1]=true; break; }
  2441. try { GenericConvert( in->YDim, arg, db ); break; }
  2442. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRectangleProfileDef to be a `IfcPositiveLengthMeasure`")); }
  2443. } while(0);
  2444. return base;
  2445. }
  2446. // -----------------------------------------------------------------------------------------------------------
  2447. template <> size_t GenericFill<IfcRectangleHollowProfileDef>(const DB& db, const LIST& params, IfcRectangleHollowProfileDef* in)
  2448. {
  2449. size_t base = GenericFill(db,params,static_cast<IfcRectangleProfileDef*>(in));
  2450. // this data structure is not used yet, so there is no code generated to fill its members
  2451. return base;
  2452. }
  2453. // -----------------------------------------------------------------------------------------------------------
  2454. template <> size_t GenericFill<IfcAnnotationFillAreaOccurrence>(const DB& db, const LIST& params, IfcAnnotationFillAreaOccurrence* in)
  2455. {
  2456. size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in));
  2457. // this data structure is not used yet, so there is no code generated to fill its members
  2458. return base;
  2459. }
  2460. // -----------------------------------------------------------------------------------------------------------
  2461. template <> size_t GenericFill<IfcClosedShell>(const DB& db, const LIST& params, IfcClosedShell* in)
  2462. {
  2463. size_t base = GenericFill(db,params,static_cast<IfcConnectedFaceSet*>(in));
  2464. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcClosedShell"); } return base;
  2465. }
  2466. // -----------------------------------------------------------------------------------------------------------
  2467. template <> size_t GenericFill<IfcFeatureElementAddition>(const DB& db, const LIST& params, IfcFeatureElementAddition* in)
  2468. {
  2469. size_t base = GenericFill(db,params,static_cast<IfcFeatureElement*>(in));
  2470. // this data structure is not used yet, so there is no code generated to fill its members
  2471. return base;
  2472. }
  2473. // -----------------------------------------------------------------------------------------------------------
  2474. template <> size_t GenericFill<IfcLightFixtureType>(const DB& db, const LIST& params, IfcLightFixtureType* in)
  2475. {
  2476. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  2477. // this data structure is not used yet, so there is no code generated to fill its members
  2478. return base;
  2479. }
  2480. // -----------------------------------------------------------------------------------------------------------
  2481. template <> size_t GenericFill<IfcProductRepresentation>(const DB& db, const LIST& params, IfcProductRepresentation* in)
  2482. {
  2483. size_t base = 0;
  2484. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcProductRepresentation"); } do { // convert the 'Name' argument
  2485. boost::shared_ptr<const DataType> arg = params[base++];
  2486. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[0]=true; break; }
  2487. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2488. try { GenericConvert( in->Name, arg, db ); break; }
  2489. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcProductRepresentation to be a `IfcLabel`")); }
  2490. } while(0);
  2491. do { // convert the 'Description' argument
  2492. boost::shared_ptr<const DataType> arg = params[base++];
  2493. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[1]=true; break; }
  2494. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2495. try { GenericConvert( in->Description, arg, db ); break; }
  2496. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcProductRepresentation to be a `IfcText`")); }
  2497. } while(0);
  2498. do { // convert the 'Representations' argument
  2499. boost::shared_ptr<const DataType> arg = params[base++];
  2500. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcProductRepresentation,3>::aux_is_derived[2]=true; break; }
  2501. try { GenericConvert( in->Representations, arg, db ); break; }
  2502. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcProductRepresentation to be a `LIST [1:?] OF IfcRepresentation`")); }
  2503. } while(0);
  2504. return base;
  2505. }
  2506. // -----------------------------------------------------------------------------------------------------------
  2507. template <> size_t GenericFill<IfcCableSegmentType>(const DB& db, const LIST& params, IfcCableSegmentType* in)
  2508. {
  2509. size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in));
  2510. // this data structure is not used yet, so there is no code generated to fill its members
  2511. return base;
  2512. }
  2513. // -----------------------------------------------------------------------------------------------------------
  2514. template <> size_t GenericFill<IfcEdgeCurve>(const DB& db, const LIST& params, IfcEdgeCurve* in)
  2515. {
  2516. size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in));
  2517. // this data structure is not used yet, so there is no code generated to fill its members
  2518. return base;
  2519. }
  2520. // -----------------------------------------------------------------------------------------------------------
  2521. template <> size_t GenericFill<IfcFurnishingElementType>(const DB& db, const LIST& params, IfcFurnishingElementType* in)
  2522. {
  2523. size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in));
  2524. // this data structure is not used yet, so there is no code generated to fill its members
  2525. return base;
  2526. }
  2527. // -----------------------------------------------------------------------------------------------------------
  2528. template <> size_t GenericFill<IfcSystemFurnitureElementType>(const DB& db, const LIST& params, IfcSystemFurnitureElementType* in)
  2529. {
  2530. size_t base = GenericFill(db,params,static_cast<IfcFurnishingElementType*>(in));
  2531. // this data structure is not used yet, so there is no code generated to fill its members
  2532. return base;
  2533. }
  2534. // -----------------------------------------------------------------------------------------------------------
  2535. template <> size_t GenericFill<IfcLinearDimension>(const DB& db, const LIST& params, IfcLinearDimension* in)
  2536. {
  2537. size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in));
  2538. // this data structure is not used yet, so there is no code generated to fill its members
  2539. return base;
  2540. }
  2541. // -----------------------------------------------------------------------------------------------------------
  2542. template <> size_t GenericFill<IfcStair>(const DB& db, const LIST& params, IfcStair* in)
  2543. {
  2544. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  2545. // this data structure is not used yet, so there is no code generated to fill its members
  2546. return base;
  2547. }
  2548. // -----------------------------------------------------------------------------------------------------------
  2549. template <> size_t GenericFill<IfcBuildingElementComponent>(const DB& db, const LIST& params, IfcBuildingElementComponent* in)
  2550. {
  2551. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  2552. // this data structure is not used yet, so there is no code generated to fill its members
  2553. return base;
  2554. }
  2555. // -----------------------------------------------------------------------------------------------------------
  2556. template <> size_t GenericFill<IfcBuildingElementPart>(const DB& db, const LIST& params, IfcBuildingElementPart* in)
  2557. {
  2558. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementComponent*>(in));
  2559. // this data structure is not used yet, so there is no code generated to fill its members
  2560. return base;
  2561. }
  2562. // -----------------------------------------------------------------------------------------------------------
  2563. template <> size_t GenericFill<IfcFace>(const DB& db, const LIST& params, IfcFace* in)
  2564. {
  2565. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  2566. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcFace"); } do { // convert the 'Bounds' argument
  2567. boost::shared_ptr<const DataType> arg = params[base++];
  2568. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFace,1>::aux_is_derived[0]=true; break; }
  2569. try { GenericConvert( in->Bounds, arg, db ); break; }
  2570. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFace to be a `SET [1:?] OF IfcFaceBound`")); }
  2571. } while(0);
  2572. return base;
  2573. }
  2574. // -----------------------------------------------------------------------------------------------------------
  2575. template <> size_t GenericFill<IfcFaceSurface>(const DB& db, const LIST& params, IfcFaceSurface* in)
  2576. {
  2577. size_t base = GenericFill(db,params,static_cast<IfcFace*>(in));
  2578. // this data structure is not used yet, so there is no code generated to fill its members
  2579. return base;
  2580. }
  2581. // -----------------------------------------------------------------------------------------------------------
  2582. template <> size_t GenericFill<IfcRelDecomposes>(const DB& db, const LIST& params, IfcRelDecomposes* in)
  2583. {
  2584. size_t base = GenericFill(db,params,static_cast<IfcRelationship*>(in));
  2585. if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelDecomposes"); } do { // convert the 'RelatingObject' argument
  2586. boost::shared_ptr<const DataType> arg = params[base++];
  2587. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDecomposes,2>::aux_is_derived[0]=true; break; }
  2588. try { GenericConvert( in->RelatingObject, arg, db ); break; }
  2589. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelDecomposes to be a `IfcObjectDefinition`")); }
  2590. } while(0);
  2591. do { // convert the 'RelatedObjects' argument
  2592. boost::shared_ptr<const DataType> arg = params[base++];
  2593. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcRelDecomposes,2>::aux_is_derived[1]=true; break; }
  2594. try { GenericConvert( in->RelatedObjects, arg, db ); break; }
  2595. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelDecomposes to be a `SET [1:?] OF IfcObjectDefinition`")); }
  2596. } while(0);
  2597. return base;
  2598. }
  2599. // -----------------------------------------------------------------------------------------------------------
  2600. template <> size_t GenericFill<IfcDimensionCurve>(const DB& db, const LIST& params, IfcDimensionCurve* in)
  2601. {
  2602. size_t base = GenericFill(db,params,static_cast<IfcAnnotationCurveOccurrence*>(in));
  2603. // this data structure is not used yet, so there is no code generated to fill its members
  2604. return base;
  2605. }
  2606. // -----------------------------------------------------------------------------------------------------------
  2607. template <> size_t GenericFill<IfcBeam>(const DB& db, const LIST& params, IfcBeam* in)
  2608. {
  2609. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  2610. // this data structure is not used yet, so there is no code generated to fill its members
  2611. return base;
  2612. }
  2613. // -----------------------------------------------------------------------------------------------------------
  2614. template <> size_t GenericFill<IfcColumnType>(const DB& db, const LIST& params, IfcColumnType* in)
  2615. {
  2616. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  2617. // this data structure is not used yet, so there is no code generated to fill its members
  2618. return base;
  2619. }
  2620. // -----------------------------------------------------------------------------------------------------------
  2621. template <> size_t GenericFill<IfcAirTerminalType>(const DB& db, const LIST& params, IfcAirTerminalType* in)
  2622. {
  2623. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  2624. // this data structure is not used yet, so there is no code generated to fill its members
  2625. return base;
  2626. }
  2627. // -----------------------------------------------------------------------------------------------------------
  2628. template <> size_t GenericFill<IfcProjectOrder>(const DB& db, const LIST& params, IfcProjectOrder* in)
  2629. {
  2630. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  2631. // this data structure is not used yet, so there is no code generated to fill its members
  2632. return base;
  2633. }
  2634. // -----------------------------------------------------------------------------------------------------------
  2635. template <> size_t GenericFill<IfcSectionedSpine>(const DB& db, const LIST& params, IfcSectionedSpine* in)
  2636. {
  2637. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  2638. // this data structure is not used yet, so there is no code generated to fill its members
  2639. return base;
  2640. }
  2641. // -----------------------------------------------------------------------------------------------------------
  2642. template <> size_t GenericFill<IfcHeatExchangerType>(const DB& db, const LIST& params, IfcHeatExchangerType* in)
  2643. {
  2644. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  2645. // this data structure is not used yet, so there is no code generated to fill its members
  2646. return base;
  2647. }
  2648. // -----------------------------------------------------------------------------------------------------------
  2649. template <> size_t GenericFill<IfcLShapeProfileDef>(const DB& db, const LIST& params, IfcLShapeProfileDef* in)
  2650. {
  2651. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2652. // this data structure is not used yet, so there is no code generated to fill its members
  2653. return base;
  2654. }
  2655. // -----------------------------------------------------------------------------------------------------------
  2656. template <> size_t GenericFill<IfcCooledBeamType>(const DB& db, const LIST& params, IfcCooledBeamType* in)
  2657. {
  2658. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  2659. // this data structure is not used yet, so there is no code generated to fill its members
  2660. return base;
  2661. }
  2662. // -----------------------------------------------------------------------------------------------------------
  2663. template <> size_t GenericFill<IfcUnitAssignment>(const DB& db, const LIST& params, IfcUnitAssignment* in)
  2664. {
  2665. size_t base = 0;
  2666. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcUnitAssignment"); } do { // convert the 'Units' argument
  2667. boost::shared_ptr<const DataType> arg = params[base++];
  2668. try { GenericConvert( in->Units, arg, db ); break; }
  2669. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcUnitAssignment to be a `SET [1:?] OF IfcUnit`")); }
  2670. } while(0);
  2671. return base;
  2672. }
  2673. // -----------------------------------------------------------------------------------------------------------
  2674. template <> size_t GenericFill<IfcDistributionChamberElement>(const DB& db, const LIST& params, IfcDistributionChamberElement* in)
  2675. {
  2676. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  2677. // this data structure is not used yet, so there is no code generated to fill its members
  2678. return base;
  2679. }
  2680. // -----------------------------------------------------------------------------------------------------------
  2681. template <> size_t GenericFill<IfcResource>(const DB& db, const LIST& params, IfcResource* in)
  2682. {
  2683. size_t base = GenericFill(db,params,static_cast<IfcObject*>(in));
  2684. // this data structure is not used yet, so there is no code generated to fill its members
  2685. return base;
  2686. }
  2687. // -----------------------------------------------------------------------------------------------------------
  2688. template <> size_t GenericFill<IfcConstructionResource>(const DB& db, const LIST& params, IfcConstructionResource* in)
  2689. {
  2690. size_t base = GenericFill(db,params,static_cast<IfcResource*>(in));
  2691. // this data structure is not used yet, so there is no code generated to fill its members
  2692. return base;
  2693. }
  2694. // -----------------------------------------------------------------------------------------------------------
  2695. template <> size_t GenericFill<IfcSubContractResource>(const DB& db, const LIST& params, IfcSubContractResource* in)
  2696. {
  2697. size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in));
  2698. // this data structure is not used yet, so there is no code generated to fill its members
  2699. return base;
  2700. }
  2701. // -----------------------------------------------------------------------------------------------------------
  2702. template <> size_t GenericFill<IfcZShapeProfileDef>(const DB& db, const LIST& params, IfcZShapeProfileDef* in)
  2703. {
  2704. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2705. // this data structure is not used yet, so there is no code generated to fill its members
  2706. return base;
  2707. }
  2708. // -----------------------------------------------------------------------------------------------------------
  2709. template <> size_t GenericFill<IfcElectricMotorType>(const DB& db, const LIST& params, IfcElectricMotorType* in)
  2710. {
  2711. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  2712. // this data structure is not used yet, so there is no code generated to fill its members
  2713. return base;
  2714. }
  2715. // -----------------------------------------------------------------------------------------------------------
  2716. template <> size_t GenericFill<IfcScheduleTimeControl>(const DB& db, const LIST& params, IfcScheduleTimeControl* in)
  2717. {
  2718. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  2719. // this data structure is not used yet, so there is no code generated to fill its members
  2720. return base;
  2721. }
  2722. // -----------------------------------------------------------------------------------------------------------
  2723. template <> size_t GenericFill<IfcSpace>(const DB& db, const LIST& params, IfcSpace* in)
  2724. {
  2725. size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in));
  2726. if (params.GetSize() < 11) { throw STEP::TypeError("expected 11 arguments to IfcSpace"); } do { // convert the 'InteriorOrExteriorSpace' argument
  2727. boost::shared_ptr<const DataType> arg = params[base++];
  2728. try { GenericConvert( in->InteriorOrExteriorSpace, arg, db ); break; }
  2729. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcSpace to be a `IfcInternalOrExternalEnum`")); }
  2730. } while(0);
  2731. do { // convert the 'ElevationWithFlooring' argument
  2732. boost::shared_ptr<const DataType> arg = params[base++];
  2733. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2734. try { GenericConvert( in->ElevationWithFlooring, arg, db ); break; }
  2735. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcSpace to be a `IfcLengthMeasure`")); }
  2736. } while(0);
  2737. return base;
  2738. }
  2739. // -----------------------------------------------------------------------------------------------------------
  2740. template <> size_t GenericFill<IfcSurface>(const DB& db, const LIST& params, IfcSurface* in)
  2741. {
  2742. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  2743. return base;
  2744. }
  2745. // -----------------------------------------------------------------------------------------------------------
  2746. template <> size_t GenericFill<IfcBoundedSurface>(const DB& db, const LIST& params, IfcBoundedSurface* in)
  2747. {
  2748. size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in));
  2749. // this data structure is not used yet, so there is no code generated to fill its members
  2750. return base;
  2751. }
  2752. // -----------------------------------------------------------------------------------------------------------
  2753. template <> size_t GenericFill<IfcRectangularTrimmedSurface>(const DB& db, const LIST& params, IfcRectangularTrimmedSurface* in)
  2754. {
  2755. size_t base = GenericFill(db,params,static_cast<IfcBoundedSurface*>(in));
  2756. // this data structure is not used yet, so there is no code generated to fill its members
  2757. return base;
  2758. }
  2759. // -----------------------------------------------------------------------------------------------------------
  2760. template <> size_t GenericFill<IfcFlowStorageDevice>(const DB& db, const LIST& params, IfcFlowStorageDevice* in)
  2761. {
  2762. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  2763. // this data structure is not used yet, so there is no code generated to fill its members
  2764. return base;
  2765. }
  2766. // -----------------------------------------------------------------------------------------------------------
  2767. template <> size_t GenericFill<IfcRelContainedInSpatialStructure>(const DB& db, const LIST& params, IfcRelContainedInSpatialStructure* in)
  2768. {
  2769. size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in));
  2770. if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelContainedInSpatialStructure"); } do { // convert the 'RelatedElements' argument
  2771. boost::shared_ptr<const DataType> arg = params[base++];
  2772. try { GenericConvert( in->RelatedElements, arg, db ); break; }
  2773. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelContainedInSpatialStructure to be a `SET [1:?] OF IfcProduct`")); }
  2774. } while(0);
  2775. do { // convert the 'RelatingStructure' argument
  2776. boost::shared_ptr<const DataType> arg = params[base++];
  2777. try { GenericConvert( in->RelatingStructure, arg, db ); break; }
  2778. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelContainedInSpatialStructure to be a `IfcSpatialStructureElement`")); }
  2779. } while(0);
  2780. return base;
  2781. }
  2782. // -----------------------------------------------------------------------------------------------------------
  2783. template <> size_t GenericFill<IfcArbitraryClosedProfileDef>(const DB& db, const LIST& params, IfcArbitraryClosedProfileDef* in)
  2784. {
  2785. size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in));
  2786. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcArbitraryClosedProfileDef"); } do { // convert the 'OuterCurve' argument
  2787. boost::shared_ptr<const DataType> arg = params[base++];
  2788. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcArbitraryClosedProfileDef,1>::aux_is_derived[0]=true; break; }
  2789. try { GenericConvert( in->OuterCurve, arg, db ); break; }
  2790. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcArbitraryClosedProfileDef to be a `IfcCurve`")); }
  2791. } while(0);
  2792. return base;
  2793. }
  2794. // -----------------------------------------------------------------------------------------------------------
  2795. template <> size_t GenericFill<IfcPath>(const DB& db, const LIST& params, IfcPath* in)
  2796. {
  2797. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  2798. // this data structure is not used yet, so there is no code generated to fill its members
  2799. return base;
  2800. }
  2801. // -----------------------------------------------------------------------------------------------------------
  2802. template <> size_t GenericFill<IfcFurnitureStandard>(const DB& db, const LIST& params, IfcFurnitureStandard* in)
  2803. {
  2804. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  2805. // this data structure is not used yet, so there is no code generated to fill its members
  2806. return base;
  2807. }
  2808. // -----------------------------------------------------------------------------------------------------------
  2809. template <> size_t GenericFill<IfcStructuralAction>(const DB& db, const LIST& params, IfcStructuralAction* in)
  2810. {
  2811. size_t base = GenericFill(db,params,static_cast<IfcStructuralActivity*>(in));
  2812. // this data structure is not used yet, so there is no code generated to fill its members
  2813. return base;
  2814. }
  2815. // -----------------------------------------------------------------------------------------------------------
  2816. template <> size_t GenericFill<IfcStructuralPlanarAction>(const DB& db, const LIST& params, IfcStructuralPlanarAction* in)
  2817. {
  2818. size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in));
  2819. // this data structure is not used yet, so there is no code generated to fill its members
  2820. return base;
  2821. }
  2822. // -----------------------------------------------------------------------------------------------------------
  2823. template <> size_t GenericFill<IfcStructuralPlanarActionVarying>(const DB& db, const LIST& params, IfcStructuralPlanarActionVarying* in)
  2824. {
  2825. size_t base = GenericFill(db,params,static_cast<IfcStructuralPlanarAction*>(in));
  2826. // this data structure is not used yet, so there is no code generated to fill its members
  2827. return base;
  2828. }
  2829. // -----------------------------------------------------------------------------------------------------------
  2830. template <> size_t GenericFill<IfcElectricTimeControlType>(const DB& db, const LIST& params, IfcElectricTimeControlType* in)
  2831. {
  2832. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  2833. // this data structure is not used yet, so there is no code generated to fill its members
  2834. return base;
  2835. }
  2836. // -----------------------------------------------------------------------------------------------------------
  2837. template <> size_t GenericFill<IfcConversionBasedUnit>(const DB& db, const LIST& params, IfcConversionBasedUnit* in)
  2838. {
  2839. size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in));
  2840. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcConversionBasedUnit"); } do { // convert the 'Name' argument
  2841. boost::shared_ptr<const DataType> arg = params[base++];
  2842. try { GenericConvert( in->Name, arg, db ); break; }
  2843. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcConversionBasedUnit to be a `IfcLabel`")); }
  2844. } while(0);
  2845. do { // convert the 'ConversionFactor' argument
  2846. boost::shared_ptr<const DataType> arg = params[base++];
  2847. try { GenericConvert( in->ConversionFactor, arg, db ); break; }
  2848. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcConversionBasedUnit to be a `IfcMeasureWithUnit`")); }
  2849. } while(0);
  2850. return base;
  2851. }
  2852. // -----------------------------------------------------------------------------------------------------------
  2853. template <> size_t GenericFill<IfcPolyline>(const DB& db, const LIST& params, IfcPolyline* in)
  2854. {
  2855. size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in));
  2856. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPolyline"); } do { // convert the 'Points' argument
  2857. boost::shared_ptr<const DataType> arg = params[base++];
  2858. try { GenericConvert( in->Points, arg, db ); break; }
  2859. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPolyline to be a `LIST [2:?] OF IfcCartesianPoint`")); }
  2860. } while(0);
  2861. return base;
  2862. }
  2863. // -----------------------------------------------------------------------------------------------------------
  2864. template <> size_t GenericFill<IfcEvaporatorType>(const DB& db, const LIST& params, IfcEvaporatorType* in)
  2865. {
  2866. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  2867. // this data structure is not used yet, so there is no code generated to fill its members
  2868. return base;
  2869. }
  2870. // -----------------------------------------------------------------------------------------------------------
  2871. template <> size_t GenericFill<IfcColourRgb>(const DB& db, const LIST& params, IfcColourRgb* in)
  2872. {
  2873. size_t base = GenericFill(db,params,static_cast<IfcColourSpecification*>(in));
  2874. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcColourRgb"); } do { // convert the 'Red' argument
  2875. boost::shared_ptr<const DataType> arg = params[base++];
  2876. try { GenericConvert( in->Red, arg, db ); break; }
  2877. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); }
  2878. } while(0);
  2879. do { // convert the 'Green' argument
  2880. boost::shared_ptr<const DataType> arg = params[base++];
  2881. try { GenericConvert( in->Green, arg, db ); break; }
  2882. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); }
  2883. } while(0);
  2884. do { // convert the 'Blue' argument
  2885. boost::shared_ptr<const DataType> arg = params[base++];
  2886. try { GenericConvert( in->Blue, arg, db ); break; }
  2887. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcColourRgb to be a `IfcNormalisedRatioMeasure`")); }
  2888. } while(0);
  2889. return base;
  2890. }
  2891. // -----------------------------------------------------------------------------------------------------------
  2892. template <> size_t GenericFill<IfcEquipmentStandard>(const DB& db, const LIST& params, IfcEquipmentStandard* in)
  2893. {
  2894. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  2895. // this data structure is not used yet, so there is no code generated to fill its members
  2896. return base;
  2897. }
  2898. // -----------------------------------------------------------------------------------------------------------
  2899. template <> size_t GenericFill<IfcTransformerType>(const DB& db, const LIST& params, IfcTransformerType* in)
  2900. {
  2901. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  2902. // this data structure is not used yet, so there is no code generated to fill its members
  2903. return base;
  2904. }
  2905. // -----------------------------------------------------------------------------------------------------------
  2906. template <> size_t GenericFill<IfcElementComponentType>(const DB& db, const LIST& params, IfcElementComponentType* in)
  2907. {
  2908. size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in));
  2909. // this data structure is not used yet, so there is no code generated to fill its members
  2910. return base;
  2911. }
  2912. // -----------------------------------------------------------------------------------------------------------
  2913. template <> size_t GenericFill<IfcDiscreteAccessoryType>(const DB& db, const LIST& params, IfcDiscreteAccessoryType* in)
  2914. {
  2915. size_t base = GenericFill(db,params,static_cast<IfcElementComponentType*>(in));
  2916. // this data structure is not used yet, so there is no code generated to fill its members
  2917. return base;
  2918. }
  2919. // -----------------------------------------------------------------------------------------------------------
  2920. template <> size_t GenericFill<IfcVibrationIsolatorType>(const DB& db, const LIST& params, IfcVibrationIsolatorType* in)
  2921. {
  2922. size_t base = GenericFill(db,params,static_cast<IfcDiscreteAccessoryType*>(in));
  2923. // this data structure is not used yet, so there is no code generated to fill its members
  2924. return base;
  2925. }
  2926. // -----------------------------------------------------------------------------------------------------------
  2927. template <> size_t GenericFill<IfcSweptDiskSolid>(const DB& db, const LIST& params, IfcSweptDiskSolid* in)
  2928. {
  2929. size_t base = GenericFill(db,params,static_cast<IfcSolidModel*>(in));
  2930. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcSweptDiskSolid"); } do { // convert the 'Directrix' argument
  2931. boost::shared_ptr<const DataType> arg = params[base++];
  2932. try { GenericConvert( in->Directrix, arg, db ); break; }
  2933. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSweptDiskSolid to be a `IfcCurve`")); }
  2934. } while(0);
  2935. do { // convert the 'Radius' argument
  2936. boost::shared_ptr<const DataType> arg = params[base++];
  2937. try { GenericConvert( in->Radius, arg, db ); break; }
  2938. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSweptDiskSolid to be a `IfcPositiveLengthMeasure`")); }
  2939. } while(0);
  2940. do { // convert the 'InnerRadius' argument
  2941. boost::shared_ptr<const DataType> arg = params[base++];
  2942. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2943. try { GenericConvert( in->InnerRadius, arg, db ); break; }
  2944. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSweptDiskSolid to be a `IfcPositiveLengthMeasure`")); }
  2945. } while(0);
  2946. do { // convert the 'StartParam' argument
  2947. boost::shared_ptr<const DataType> arg = params[base++];
  2948. try { GenericConvert( in->StartParam, arg, db ); break; }
  2949. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSweptDiskSolid to be a `IfcParameterValue`")); }
  2950. } while(0);
  2951. do { // convert the 'EndParam' argument
  2952. boost::shared_ptr<const DataType> arg = params[base++];
  2953. try { GenericConvert( in->EndParam, arg, db ); break; }
  2954. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcSweptDiskSolid to be a `IfcParameterValue`")); }
  2955. } while(0);
  2956. return base;
  2957. }
  2958. // -----------------------------------------------------------------------------------------------------------
  2959. template <> size_t GenericFill<IfcPresentationStyle>(const DB& db, const LIST& params, IfcPresentationStyle* in)
  2960. {
  2961. size_t base = 0;
  2962. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPresentationStyle"); } do { // convert the 'Name' argument
  2963. boost::shared_ptr<const DataType> arg = params[base++];
  2964. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcPresentationStyle,1>::aux_is_derived[0]=true; break; }
  2965. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2966. try { GenericConvert( in->Name, arg, db ); break; }
  2967. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPresentationStyle to be a `IfcLabel`")); }
  2968. } while(0);
  2969. return base;
  2970. }
  2971. // -----------------------------------------------------------------------------------------------------------
  2972. template <> size_t GenericFill<IfcCShapeProfileDef>(const DB& db, const LIST& params, IfcCShapeProfileDef* in)
  2973. {
  2974. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  2975. // this data structure is not used yet, so there is no code generated to fill its members
  2976. return base;
  2977. }
  2978. // -----------------------------------------------------------------------------------------------------------
  2979. template <> size_t GenericFill<IfcFillAreaStyleHatching>(const DB& db, const LIST& params, IfcFillAreaStyleHatching* in)
  2980. {
  2981. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  2982. // this data structure is not used yet, so there is no code generated to fill its members
  2983. return base;
  2984. }
  2985. // -----------------------------------------------------------------------------------------------------------
  2986. template <> size_t GenericFill<IfcSite>(const DB& db, const LIST& params, IfcSite* in)
  2987. {
  2988. size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in));
  2989. if (params.GetSize() < 14) { throw STEP::TypeError("expected 14 arguments to IfcSite"); } do { // convert the 'RefLatitude' argument
  2990. boost::shared_ptr<const DataType> arg = params[base++];
  2991. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2992. try { GenericConvert( in->RefLatitude, arg, db ); break; }
  2993. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcSite to be a `IfcCompoundPlaneAngleMeasure`")); }
  2994. } while(0);
  2995. do { // convert the 'RefLongitude' argument
  2996. boost::shared_ptr<const DataType> arg = params[base++];
  2997. if (dynamic_cast<const UNSET*>(&*arg)) break;
  2998. try { GenericConvert( in->RefLongitude, arg, db ); break; }
  2999. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 10 to IfcSite to be a `IfcCompoundPlaneAngleMeasure`")); }
  3000. } while(0);
  3001. do { // convert the 'RefElevation' argument
  3002. boost::shared_ptr<const DataType> arg = params[base++];
  3003. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3004. try { GenericConvert( in->RefElevation, arg, db ); break; }
  3005. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 11 to IfcSite to be a `IfcLengthMeasure`")); }
  3006. } while(0);
  3007. do { // convert the 'LandTitleNumber' argument
  3008. boost::shared_ptr<const DataType> arg = params[base++];
  3009. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3010. try { GenericConvert( in->LandTitleNumber, arg, db ); break; }
  3011. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 12 to IfcSite to be a `IfcLabel`")); }
  3012. } while(0);
  3013. do { // convert the 'SiteAddress' argument
  3014. boost::shared_ptr<const DataType> arg = params[base++];
  3015. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3016. try { GenericConvert( in->SiteAddress, arg, db ); break; }
  3017. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 13 to IfcSite to be a `IfcPostalAddress`")); }
  3018. } while(0);
  3019. return base;
  3020. }
  3021. // -----------------------------------------------------------------------------------------------------------
  3022. template <> size_t GenericFill<IfcSIUnit>(const DB& db, const LIST& params, IfcSIUnit* in)
  3023. {
  3024. size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in));
  3025. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcSIUnit"); } do { // convert the 'Prefix' argument
  3026. boost::shared_ptr<const DataType> arg = params[base++];
  3027. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3028. try { GenericConvert( in->Prefix, arg, db ); break; }
  3029. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSIUnit to be a `IfcSIPrefix`")); }
  3030. } while(0);
  3031. do { // convert the 'Name' argument
  3032. boost::shared_ptr<const DataType> arg = params[base++];
  3033. try { GenericConvert( in->Name, arg, db ); break; }
  3034. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSIUnit to be a `IfcSIUnitName`")); }
  3035. } while(0);
  3036. return base;
  3037. }
  3038. // -----------------------------------------------------------------------------------------------------------
  3039. template <> size_t GenericFill<IfcTransportElement>(const DB& db, const LIST& params, IfcTransportElement* in)
  3040. {
  3041. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  3042. // this data structure is not used yet, so there is no code generated to fill its members
  3043. return base;
  3044. }
  3045. // -----------------------------------------------------------------------------------------------------------
  3046. template <> size_t GenericFill<IfcGrid>(const DB& db, const LIST& params, IfcGrid* in)
  3047. {
  3048. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  3049. // this data structure is not used yet, so there is no code generated to fill its members
  3050. return base;
  3051. }
  3052. // -----------------------------------------------------------------------------------------------------------
  3053. template <> size_t GenericFill<IfcCurveBoundedPlane>(const DB& db, const LIST& params, IfcCurveBoundedPlane* in)
  3054. {
  3055. size_t base = GenericFill(db,params,static_cast<IfcBoundedSurface*>(in));
  3056. // this data structure is not used yet, so there is no code generated to fill its members
  3057. return base;
  3058. }
  3059. // -----------------------------------------------------------------------------------------------------------
  3060. template <> size_t GenericFill<IfcFaceBasedSurfaceModel>(const DB& db, const LIST& params, IfcFaceBasedSurfaceModel* in)
  3061. {
  3062. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3063. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcFaceBasedSurfaceModel"); } do { // convert the 'FbsmFaces' argument
  3064. boost::shared_ptr<const DataType> arg = params[base++];
  3065. try { GenericConvert( in->FbsmFaces, arg, db ); break; }
  3066. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFaceBasedSurfaceModel to be a `SET [1:?] OF IfcConnectedFaceSet`")); }
  3067. } while(0);
  3068. return base;
  3069. }
  3070. // -----------------------------------------------------------------------------------------------------------
  3071. template <> size_t GenericFill<IfcAnnotationSymbolOccurrence>(const DB& db, const LIST& params, IfcAnnotationSymbolOccurrence* in)
  3072. {
  3073. size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in));
  3074. // this data structure is not used yet, so there is no code generated to fill its members
  3075. return base;
  3076. }
  3077. // -----------------------------------------------------------------------------------------------------------
  3078. template <> size_t GenericFill<IfcAxis2Placement3D>(const DB& db, const LIST& params, IfcAxis2Placement3D* in)
  3079. {
  3080. size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in));
  3081. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcAxis2Placement3D"); } do { // convert the 'Axis' argument
  3082. boost::shared_ptr<const DataType> arg = params[base++];
  3083. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3084. try { GenericConvert( in->Axis, arg, db ); break; }
  3085. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis2Placement3D to be a `IfcDirection`")); }
  3086. } while(0);
  3087. do { // convert the 'RefDirection' argument
  3088. boost::shared_ptr<const DataType> arg = params[base++];
  3089. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3090. try { GenericConvert( in->RefDirection, arg, db ); break; }
  3091. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcAxis2Placement3D to be a `IfcDirection`")); }
  3092. } while(0);
  3093. return base;
  3094. }
  3095. // -----------------------------------------------------------------------------------------------------------
  3096. template <> size_t GenericFill<IfcRamp>(const DB& db, const LIST& params, IfcRamp* in)
  3097. {
  3098. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3099. // this data structure is not used yet, so there is no code generated to fill its members
  3100. return base;
  3101. }
  3102. // -----------------------------------------------------------------------------------------------------------
  3103. template <> size_t GenericFill<IfcLaborResource>(const DB& db, const LIST& params, IfcLaborResource* in)
  3104. {
  3105. size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in));
  3106. // this data structure is not used yet, so there is no code generated to fill its members
  3107. return base;
  3108. }
  3109. // -----------------------------------------------------------------------------------------------------------
  3110. template <> size_t GenericFill<IfcCartesianTransformationOperator3DnonUniform>(const DB& db, const LIST& params, IfcCartesianTransformationOperator3DnonUniform* in)
  3111. {
  3112. size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator3D*>(in));
  3113. if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcCartesianTransformationOperator3DnonUniform"); } do { // convert the 'Scale2' argument
  3114. boost::shared_ptr<const DataType> arg = params[base++];
  3115. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3116. try { GenericConvert( in->Scale2, arg, db ); break; }
  3117. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcCartesianTransformationOperator3DnonUniform to be a `REAL`")); }
  3118. } while(0);
  3119. do { // convert the 'Scale3' argument
  3120. boost::shared_ptr<const DataType> arg = params[base++];
  3121. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3122. try { GenericConvert( in->Scale3, arg, db ); break; }
  3123. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcCartesianTransformationOperator3DnonUniform to be a `REAL`")); }
  3124. } while(0);
  3125. return base;
  3126. }
  3127. // -----------------------------------------------------------------------------------------------------------
  3128. template <> size_t GenericFill<IfcFaceBound>(const DB& db, const LIST& params, IfcFaceBound* in)
  3129. {
  3130. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  3131. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcFaceBound"); } do { // convert the 'Bound' argument
  3132. boost::shared_ptr<const DataType> arg = params[base++];
  3133. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFaceBound,2>::aux_is_derived[0]=true; break; }
  3134. try { GenericConvert( in->Bound, arg, db ); break; }
  3135. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcFaceBound to be a `IfcLoop`")); }
  3136. } while(0);
  3137. do { // convert the 'Orientation' argument
  3138. boost::shared_ptr<const DataType> arg = params[base++];
  3139. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcFaceBound,2>::aux_is_derived[1]=true; break; }
  3140. try { GenericConvert( in->Orientation, arg, db ); break; }
  3141. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcFaceBound to be a `BOOLEAN`")); }
  3142. } while(0);
  3143. return base;
  3144. }
  3145. // -----------------------------------------------------------------------------------------------------------
  3146. template <> size_t GenericFill<IfcFaceOuterBound>(const DB& db, const LIST& params, IfcFaceOuterBound* in)
  3147. {
  3148. size_t base = GenericFill(db,params,static_cast<IfcFaceBound*>(in));
  3149. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcFaceOuterBound"); } return base;
  3150. }
  3151. // -----------------------------------------------------------------------------------------------------------
  3152. template <> size_t GenericFill<IfcMeasureWithUnit>(const DB& db, const LIST& params, IfcMeasureWithUnit* in)
  3153. {
  3154. size_t base = 0;
  3155. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcMeasureWithUnit"); } do { // convert the 'ValueComponent' argument
  3156. boost::shared_ptr<const DataType> arg = params[base++];
  3157. try { GenericConvert( in->ValueComponent, arg, db ); break; }
  3158. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcMeasureWithUnit to be a `IfcValue`")); }
  3159. } while(0);
  3160. do { // convert the 'UnitComponent' argument
  3161. boost::shared_ptr<const DataType> arg = params[base++];
  3162. try { GenericConvert( in->UnitComponent, arg, db ); break; }
  3163. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcMeasureWithUnit to be a `IfcUnit`")); }
  3164. } while(0);
  3165. return base;
  3166. }
  3167. // -----------------------------------------------------------------------------------------------------------
  3168. template <> size_t GenericFill<IfcStructuralReaction>(const DB& db, const LIST& params, IfcStructuralReaction* in)
  3169. {
  3170. size_t base = GenericFill(db,params,static_cast<IfcStructuralActivity*>(in));
  3171. // this data structure is not used yet, so there is no code generated to fill its members
  3172. return base;
  3173. }
  3174. // -----------------------------------------------------------------------------------------------------------
  3175. template <> size_t GenericFill<IfcStructuralPointReaction>(const DB& db, const LIST& params, IfcStructuralPointReaction* in)
  3176. {
  3177. size_t base = GenericFill(db,params,static_cast<IfcStructuralReaction*>(in));
  3178. // this data structure is not used yet, so there is no code generated to fill its members
  3179. return base;
  3180. }
  3181. // -----------------------------------------------------------------------------------------------------------
  3182. template <> size_t GenericFill<IfcDistributionControlElementType>(const DB& db, const LIST& params, IfcDistributionControlElementType* in)
  3183. {
  3184. size_t base = GenericFill(db,params,static_cast<IfcDistributionElementType*>(in));
  3185. // this data structure is not used yet, so there is no code generated to fill its members
  3186. return base;
  3187. }
  3188. // -----------------------------------------------------------------------------------------------------------
  3189. template <> size_t GenericFill<IfcActuatorType>(const DB& db, const LIST& params, IfcActuatorType* in)
  3190. {
  3191. size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in));
  3192. // this data structure is not used yet, so there is no code generated to fill its members
  3193. return base;
  3194. }
  3195. // -----------------------------------------------------------------------------------------------------------
  3196. template <> size_t GenericFill<IfcIShapeProfileDef>(const DB& db, const LIST& params, IfcIShapeProfileDef* in)
  3197. {
  3198. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  3199. if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcIShapeProfileDef"); } do { // convert the 'OverallWidth' argument
  3200. boost::shared_ptr<const DataType> arg = params[base++];
  3201. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[0]=true; break; }
  3202. try { GenericConvert( in->OverallWidth, arg, db ); break; }
  3203. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); }
  3204. } while(0);
  3205. do { // convert the 'OverallDepth' argument
  3206. boost::shared_ptr<const DataType> arg = params[base++];
  3207. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[1]=true; break; }
  3208. try { GenericConvert( in->OverallDepth, arg, db ); break; }
  3209. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); }
  3210. } while(0);
  3211. do { // convert the 'WebThickness' argument
  3212. boost::shared_ptr<const DataType> arg = params[base++];
  3213. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[2]=true; break; }
  3214. try { GenericConvert( in->WebThickness, arg, db ); break; }
  3215. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); }
  3216. } while(0);
  3217. do { // convert the 'FlangeThickness' argument
  3218. boost::shared_ptr<const DataType> arg = params[base++];
  3219. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[3]=true; break; }
  3220. try { GenericConvert( in->FlangeThickness, arg, db ); break; }
  3221. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); }
  3222. } while(0);
  3223. do { // convert the 'FilletRadius' argument
  3224. boost::shared_ptr<const DataType> arg = params[base++];
  3225. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcIShapeProfileDef,5>::aux_is_derived[4]=true; break; }
  3226. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3227. try { GenericConvert( in->FilletRadius, arg, db ); break; }
  3228. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcIShapeProfileDef to be a `IfcPositiveLengthMeasure`")); }
  3229. } while(0);
  3230. return base;
  3231. }
  3232. // -----------------------------------------------------------------------------------------------------------
  3233. template <> size_t GenericFill<IfcAsymmetricIShapeProfileDef>(const DB& db, const LIST& params, IfcAsymmetricIShapeProfileDef* in)
  3234. {
  3235. size_t base = GenericFill(db,params,static_cast<IfcIShapeProfileDef*>(in));
  3236. // this data structure is not used yet, so there is no code generated to fill its members
  3237. return base;
  3238. }
  3239. // -----------------------------------------------------------------------------------------------------------
  3240. template <> size_t GenericFill<IfcMaterialDefinitionRepresentation>(const DB& db, const LIST& params, IfcMaterialDefinitionRepresentation* in)
  3241. {
  3242. size_t base = GenericFill(db,params,static_cast<IfcProductRepresentation*>(in));
  3243. // this data structure is not used yet, so there is no code generated to fill its members
  3244. return base;
  3245. }
  3246. // -----------------------------------------------------------------------------------------------------------
  3247. template <> size_t GenericFill<IfcUnitaryEquipmentType>(const DB& db, const LIST& params, IfcUnitaryEquipmentType* in)
  3248. {
  3249. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  3250. // this data structure is not used yet, so there is no code generated to fill its members
  3251. return base;
  3252. }
  3253. // -----------------------------------------------------------------------------------------------------------
  3254. template <> size_t GenericFill<IfcMemberType>(const DB& db, const LIST& params, IfcMemberType* in)
  3255. {
  3256. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  3257. // this data structure is not used yet, so there is no code generated to fill its members
  3258. return base;
  3259. }
  3260. // -----------------------------------------------------------------------------------------------------------
  3261. template <> size_t GenericFill<IfcDistributionControlElement>(const DB& db, const LIST& params, IfcDistributionControlElement* in)
  3262. {
  3263. size_t base = GenericFill(db,params,static_cast<IfcDistributionElement*>(in));
  3264. // this data structure is not used yet, so there is no code generated to fill its members
  3265. return base;
  3266. }
  3267. // -----------------------------------------------------------------------------------------------------------
  3268. template <> size_t GenericFill<IfcEllipse>(const DB& db, const LIST& params, IfcEllipse* in)
  3269. {
  3270. size_t base = GenericFill(db,params,static_cast<IfcConic*>(in));
  3271. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcEllipse"); } do { // convert the 'SemiAxis1' argument
  3272. boost::shared_ptr<const DataType> arg = params[base++];
  3273. try { GenericConvert( in->SemiAxis1, arg, db ); break; }
  3274. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcEllipse to be a `IfcPositiveLengthMeasure`")); }
  3275. } while(0);
  3276. do { // convert the 'SemiAxis2' argument
  3277. boost::shared_ptr<const DataType> arg = params[base++];
  3278. try { GenericConvert( in->SemiAxis2, arg, db ); break; }
  3279. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcEllipse to be a `IfcPositiveLengthMeasure`")); }
  3280. } while(0);
  3281. return base;
  3282. }
  3283. // -----------------------------------------------------------------------------------------------------------
  3284. template <> size_t GenericFill<IfcBoundingBox>(const DB& db, const LIST& params, IfcBoundingBox* in)
  3285. {
  3286. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3287. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcBoundingBox"); } do { // convert the 'Corner' argument
  3288. boost::shared_ptr<const DataType> arg = params[base++];
  3289. try { GenericConvert( in->Corner, arg, db ); break; }
  3290. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBoundingBox to be a `IfcCartesianPoint`")); }
  3291. } while(0);
  3292. do { // convert the 'XDim' argument
  3293. boost::shared_ptr<const DataType> arg = params[base++];
  3294. try { GenericConvert( in->XDim, arg, db ); break; }
  3295. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); }
  3296. } while(0);
  3297. do { // convert the 'YDim' argument
  3298. boost::shared_ptr<const DataType> arg = params[base++];
  3299. try { GenericConvert( in->YDim, arg, db ); break; }
  3300. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); }
  3301. } while(0);
  3302. do { // convert the 'ZDim' argument
  3303. boost::shared_ptr<const DataType> arg = params[base++];
  3304. try { GenericConvert( in->ZDim, arg, db ); break; }
  3305. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcBoundingBox to be a `IfcPositiveLengthMeasure`")); }
  3306. } while(0);
  3307. return base;
  3308. }
  3309. // -----------------------------------------------------------------------------------------------------------
  3310. template <> size_t GenericFill<IfcProcedure>(const DB& db, const LIST& params, IfcProcedure* in)
  3311. {
  3312. size_t base = GenericFill(db,params,static_cast<IfcProcess*>(in));
  3313. // this data structure is not used yet, so there is no code generated to fill its members
  3314. return base;
  3315. }
  3316. // -----------------------------------------------------------------------------------------------------------
  3317. template <> size_t GenericFill<IfcFireSuppressionTerminalType>(const DB& db, const LIST& params, IfcFireSuppressionTerminalType* in)
  3318. {
  3319. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  3320. // this data structure is not used yet, so there is no code generated to fill its members
  3321. return base;
  3322. }
  3323. // -----------------------------------------------------------------------------------------------------------
  3324. template <> size_t GenericFill<IfcSpatialStructureElementType>(const DB& db, const LIST& params, IfcSpatialStructureElementType* in)
  3325. {
  3326. size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in));
  3327. // this data structure is not used yet, so there is no code generated to fill its members
  3328. return base;
  3329. }
  3330. // -----------------------------------------------------------------------------------------------------------
  3331. template <> size_t GenericFill<IfcProductDefinitionShape>(const DB& db, const LIST& params, IfcProductDefinitionShape* in)
  3332. {
  3333. size_t base = GenericFill(db,params,static_cast<IfcProductRepresentation*>(in));
  3334. // this data structure is not used yet, so there is no code generated to fill its members
  3335. return base;
  3336. }
  3337. // -----------------------------------------------------------------------------------------------------------
  3338. template <> size_t GenericFill<IfcRampFlightType>(const DB& db, const LIST& params, IfcRampFlightType* in)
  3339. {
  3340. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  3341. // this data structure is not used yet, so there is no code generated to fill its members
  3342. return base;
  3343. }
  3344. // -----------------------------------------------------------------------------------------------------------
  3345. template <> size_t GenericFill<IfcBuildingStorey>(const DB& db, const LIST& params, IfcBuildingStorey* in)
  3346. {
  3347. size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElement*>(in));
  3348. // this data structure is not used yet, so there is no code generated to fill its members
  3349. return base;
  3350. }
  3351. // -----------------------------------------------------------------------------------------------------------
  3352. template <> size_t GenericFill<IfcAlarmType>(const DB& db, const LIST& params, IfcAlarmType* in)
  3353. {
  3354. size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in));
  3355. // this data structure is not used yet, so there is no code generated to fill its members
  3356. return base;
  3357. }
  3358. // -----------------------------------------------------------------------------------------------------------
  3359. template <> size_t GenericFill<IfcPerformanceHistory>(const DB& db, const LIST& params, IfcPerformanceHistory* in)
  3360. {
  3361. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  3362. // this data structure is not used yet, so there is no code generated to fill its members
  3363. return base;
  3364. }
  3365. // -----------------------------------------------------------------------------------------------------------
  3366. template <> size_t GenericFill<IfcStructuralCurveConnection>(const DB& db, const LIST& params, IfcStructuralCurveConnection* in)
  3367. {
  3368. size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in));
  3369. // this data structure is not used yet, so there is no code generated to fill its members
  3370. return base;
  3371. }
  3372. // -----------------------------------------------------------------------------------------------------------
  3373. template <> size_t GenericFill<IfcCurtainWall>(const DB& db, const LIST& params, IfcCurtainWall* in)
  3374. {
  3375. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3376. // this data structure is not used yet, so there is no code generated to fill its members
  3377. return base;
  3378. }
  3379. // -----------------------------------------------------------------------------------------------------------
  3380. template <> size_t GenericFill<IfcPipeSegmentType>(const DB& db, const LIST& params, IfcPipeSegmentType* in)
  3381. {
  3382. size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in));
  3383. // this data structure is not used yet, so there is no code generated to fill its members
  3384. return base;
  3385. }
  3386. // -----------------------------------------------------------------------------------------------------------
  3387. template <> size_t GenericFill<IfcTrimmedCurve>(const DB& db, const LIST& params, IfcTrimmedCurve* in)
  3388. {
  3389. size_t base = GenericFill(db,params,static_cast<IfcBoundedCurve*>(in));
  3390. if (params.GetSize() < 5) { throw STEP::TypeError("expected 5 arguments to IfcTrimmedCurve"); } do { // convert the 'BasisCurve' argument
  3391. boost::shared_ptr<const DataType> arg = params[base++];
  3392. try { GenericConvert( in->BasisCurve, arg, db ); break; }
  3393. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcTrimmedCurve to be a `IfcCurve`")); }
  3394. } while(0);
  3395. do { // convert the 'Trim1' argument
  3396. boost::shared_ptr<const DataType> arg = params[base++];
  3397. try { GenericConvert( in->Trim1, arg, db ); break; }
  3398. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcTrimmedCurve to be a `SET [1:2] OF IfcTrimmingSelect`")); }
  3399. } while(0);
  3400. do { // convert the 'Trim2' argument
  3401. boost::shared_ptr<const DataType> arg = params[base++];
  3402. try { GenericConvert( in->Trim2, arg, db ); break; }
  3403. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcTrimmedCurve to be a `SET [1:2] OF IfcTrimmingSelect`")); }
  3404. } while(0);
  3405. do { // convert the 'SenseAgreement' argument
  3406. boost::shared_ptr<const DataType> arg = params[base++];
  3407. try { GenericConvert( in->SenseAgreement, arg, db ); break; }
  3408. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcTrimmedCurve to be a `BOOLEAN`")); }
  3409. } while(0);
  3410. do { // convert the 'MasterRepresentation' argument
  3411. boost::shared_ptr<const DataType> arg = params[base++];
  3412. try { GenericConvert( in->MasterRepresentation, arg, db ); break; }
  3413. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcTrimmedCurve to be a `IfcTrimmingPreference`")); }
  3414. } while(0);
  3415. return base;
  3416. }
  3417. // -----------------------------------------------------------------------------------------------------------
  3418. template <> size_t GenericFill<IfcLightSourcePositional>(const DB& db, const LIST& params, IfcLightSourcePositional* in)
  3419. {
  3420. size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in));
  3421. // this data structure is not used yet, so there is no code generated to fill its members
  3422. return base;
  3423. }
  3424. // -----------------------------------------------------------------------------------------------------------
  3425. template <> size_t GenericFill<IfcSubedge>(const DB& db, const LIST& params, IfcSubedge* in)
  3426. {
  3427. size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in));
  3428. // this data structure is not used yet, so there is no code generated to fill its members
  3429. return base;
  3430. }
  3431. // -----------------------------------------------------------------------------------------------------------
  3432. template <> size_t GenericFill<IfcFlowInstrumentType>(const DB& db, const LIST& params, IfcFlowInstrumentType* in)
  3433. {
  3434. size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in));
  3435. // this data structure is not used yet, so there is no code generated to fill its members
  3436. return base;
  3437. }
  3438. // -----------------------------------------------------------------------------------------------------------
  3439. template <> size_t GenericFill<IfcStyleModel>(const DB& db, const LIST& params, IfcStyleModel* in)
  3440. {
  3441. size_t base = GenericFill(db,params,static_cast<IfcRepresentation*>(in));
  3442. // this data structure is not used yet, so there is no code generated to fill its members
  3443. return base;
  3444. }
  3445. // -----------------------------------------------------------------------------------------------------------
  3446. template <> size_t GenericFill<IfcStyledRepresentation>(const DB& db, const LIST& params, IfcStyledRepresentation* in)
  3447. {
  3448. size_t base = GenericFill(db,params,static_cast<IfcStyleModel*>(in));
  3449. // this data structure is not used yet, so there is no code generated to fill its members
  3450. return base;
  3451. }
  3452. // -----------------------------------------------------------------------------------------------------------
  3453. template <> size_t GenericFill<IfcLightSourceGoniometric>(const DB& db, const LIST& params, IfcLightSourceGoniometric* in)
  3454. {
  3455. size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in));
  3456. // this data structure is not used yet, so there is no code generated to fill its members
  3457. return base;
  3458. }
  3459. // -----------------------------------------------------------------------------------------------------------
  3460. template <> size_t GenericFill<IfcDuctSegmentType>(const DB& db, const LIST& params, IfcDuctSegmentType* in)
  3461. {
  3462. size_t base = GenericFill(db,params,static_cast<IfcFlowSegmentType*>(in));
  3463. // this data structure is not used yet, so there is no code generated to fill its members
  3464. return base;
  3465. }
  3466. // -----------------------------------------------------------------------------------------------------------
  3467. template <> size_t GenericFill<IfcAnnotation>(const DB& db, const LIST& params, IfcAnnotation* in)
  3468. {
  3469. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  3470. if (params.GetSize() < 7) { throw STEP::TypeError("expected 7 arguments to IfcAnnotation"); } return base;
  3471. }
  3472. // -----------------------------------------------------------------------------------------------------------
  3473. template <> size_t GenericFill<IfcRectangularPyramid>(const DB& db, const LIST& params, IfcRectangularPyramid* in)
  3474. {
  3475. size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in));
  3476. // this data structure is not used yet, so there is no code generated to fill its members
  3477. return base;
  3478. }
  3479. // -----------------------------------------------------------------------------------------------------------
  3480. template <> size_t GenericFill<IfcElectricFlowStorageDeviceType>(const DB& db, const LIST& params, IfcElectricFlowStorageDeviceType* in)
  3481. {
  3482. size_t base = GenericFill(db,params,static_cast<IfcFlowStorageDeviceType*>(in));
  3483. // this data structure is not used yet, so there is no code generated to fill its members
  3484. return base;
  3485. }
  3486. // -----------------------------------------------------------------------------------------------------------
  3487. template <> size_t GenericFill<IfcOffsetCurve3D>(const DB& db, const LIST& params, IfcOffsetCurve3D* in)
  3488. {
  3489. size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in));
  3490. // this data structure is not used yet, so there is no code generated to fill its members
  3491. return base;
  3492. }
  3493. // -----------------------------------------------------------------------------------------------------------
  3494. template <> size_t GenericFill<IfcShellBasedSurfaceModel>(const DB& db, const LIST& params, IfcShellBasedSurfaceModel* in)
  3495. {
  3496. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3497. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcShellBasedSurfaceModel"); } do { // convert the 'SbsmBoundary' argument
  3498. boost::shared_ptr<const DataType> arg = params[base++];
  3499. try { GenericConvert( in->SbsmBoundary, arg, db ); break; }
  3500. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcShellBasedSurfaceModel to be a `SET [1:?] OF IfcShell`")); }
  3501. } while(0);
  3502. return base;
  3503. }
  3504. // -----------------------------------------------------------------------------------------------------------
  3505. template <> size_t GenericFill<IfcElectricHeaterType>(const DB& db, const LIST& params, IfcElectricHeaterType* in)
  3506. {
  3507. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  3508. // this data structure is not used yet, so there is no code generated to fill its members
  3509. return base;
  3510. }
  3511. // -----------------------------------------------------------------------------------------------------------
  3512. template <> size_t GenericFill<IfcLightSourceAmbient>(const DB& db, const LIST& params, IfcLightSourceAmbient* in)
  3513. {
  3514. size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in));
  3515. // this data structure is not used yet, so there is no code generated to fill its members
  3516. return base;
  3517. }
  3518. // -----------------------------------------------------------------------------------------------------------
  3519. template <> size_t GenericFill<IfcDoor>(const DB& db, const LIST& params, IfcDoor* in)
  3520. {
  3521. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3522. if (params.GetSize() < 10) { throw STEP::TypeError("expected 10 arguments to IfcDoor"); } do { // convert the 'OverallHeight' argument
  3523. boost::shared_ptr<const DataType> arg = params[base++];
  3524. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3525. try { GenericConvert( in->OverallHeight, arg, db ); break; }
  3526. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcDoor to be a `IfcPositiveLengthMeasure`")); }
  3527. } while(0);
  3528. do { // convert the 'OverallWidth' argument
  3529. boost::shared_ptr<const DataType> arg = params[base++];
  3530. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3531. try { GenericConvert( in->OverallWidth, arg, db ); break; }
  3532. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 9 to IfcDoor to be a `IfcPositiveLengthMeasure`")); }
  3533. } while(0);
  3534. return base;
  3535. }
  3536. // -----------------------------------------------------------------------------------------------------------
  3537. template <> size_t GenericFill<IfcFlowTreatmentDevice>(const DB& db, const LIST& params, IfcFlowTreatmentDevice* in)
  3538. {
  3539. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  3540. // this data structure is not used yet, so there is no code generated to fill its members
  3541. return base;
  3542. }
  3543. // -----------------------------------------------------------------------------------------------------------
  3544. template <> size_t GenericFill<IfcCoolingTowerType>(const DB& db, const LIST& params, IfcCoolingTowerType* in)
  3545. {
  3546. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  3547. // this data structure is not used yet, so there is no code generated to fill its members
  3548. return base;
  3549. }
  3550. // -----------------------------------------------------------------------------------------------------------
  3551. template <> size_t GenericFill<IfcPolygonalBoundedHalfSpace>(const DB& db, const LIST& params, IfcPolygonalBoundedHalfSpace* in)
  3552. {
  3553. size_t base = GenericFill(db,params,static_cast<IfcHalfSpaceSolid*>(in));
  3554. if (params.GetSize() < 4) { throw STEP::TypeError("expected 4 arguments to IfcPolygonalBoundedHalfSpace"); } do { // convert the 'Position' argument
  3555. boost::shared_ptr<const DataType> arg = params[base++];
  3556. try { GenericConvert( in->Position, arg, db ); break; }
  3557. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcPolygonalBoundedHalfSpace to be a `IfcAxis2Placement3D`")); }
  3558. } while(0);
  3559. do { // convert the 'PolygonalBoundary' argument
  3560. boost::shared_ptr<const DataType> arg = params[base++];
  3561. try { GenericConvert( in->PolygonalBoundary, arg, db ); break; }
  3562. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcPolygonalBoundedHalfSpace to be a `IfcBoundedCurve`")); }
  3563. } while(0);
  3564. return base;
  3565. }
  3566. // -----------------------------------------------------------------------------------------------------------
  3567. template <> size_t GenericFill<IfcFanType>(const DB& db, const LIST& params, IfcFanType* in)
  3568. {
  3569. size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in));
  3570. // this data structure is not used yet, so there is no code generated to fill its members
  3571. return base;
  3572. }
  3573. // -----------------------------------------------------------------------------------------------------------
  3574. template <> size_t GenericFill<IfcDirection>(const DB& db, const LIST& params, IfcDirection* in)
  3575. {
  3576. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3577. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcDirection"); } do { // convert the 'DirectionRatios' argument
  3578. boost::shared_ptr<const DataType> arg = params[base++];
  3579. try { GenericConvert( in->DirectionRatios, arg, db ); break; }
  3580. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcDirection to be a `LIST [2:3] OF REAL`")); }
  3581. } while(0);
  3582. return base;
  3583. }
  3584. // -----------------------------------------------------------------------------------------------------------
  3585. template <> size_t GenericFill<IfcFillAreaStyleTileSymbolWithStyle>(const DB& db, const LIST& params, IfcFillAreaStyleTileSymbolWithStyle* in)
  3586. {
  3587. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3588. // this data structure is not used yet, so there is no code generated to fill its members
  3589. return base;
  3590. }
  3591. // -----------------------------------------------------------------------------------------------------------
  3592. template <> size_t GenericFill<IfcBeamType>(const DB& db, const LIST& params, IfcBeamType* in)
  3593. {
  3594. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  3595. // this data structure is not used yet, so there is no code generated to fill its members
  3596. return base;
  3597. }
  3598. // -----------------------------------------------------------------------------------------------------------
  3599. template <> size_t GenericFill<IfcObjectPlacement>(const DB& db, const LIST& params, IfcObjectPlacement* in)
  3600. {
  3601. size_t base = 0;
  3602. return base;
  3603. }
  3604. // -----------------------------------------------------------------------------------------------------------
  3605. template <> size_t GenericFill<IfcLocalPlacement>(const DB& db, const LIST& params, IfcLocalPlacement* in)
  3606. {
  3607. size_t base = GenericFill(db,params,static_cast<IfcObjectPlacement*>(in));
  3608. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcLocalPlacement"); } do { // convert the 'PlacementRelTo' argument
  3609. boost::shared_ptr<const DataType> arg = params[base++];
  3610. if (dynamic_cast<const UNSET*>(&*arg)) break;
  3611. try { GenericConvert( in->PlacementRelTo, arg, db ); break; }
  3612. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcLocalPlacement to be a `IfcObjectPlacement`")); }
  3613. } while(0);
  3614. do { // convert the 'RelativePlacement' argument
  3615. boost::shared_ptr<const DataType> arg = params[base++];
  3616. try { GenericConvert( in->RelativePlacement, arg, db ); break; }
  3617. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcLocalPlacement to be a `IfcAxis2Placement`")); }
  3618. } while(0);
  3619. return base;
  3620. }
  3621. // -----------------------------------------------------------------------------------------------------------
  3622. template <> size_t GenericFill<IfcFlowFitting>(const DB& db, const LIST& params, IfcFlowFitting* in)
  3623. {
  3624. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  3625. // this data structure is not used yet, so there is no code generated to fill its members
  3626. return base;
  3627. }
  3628. // -----------------------------------------------------------------------------------------------------------
  3629. template <> size_t GenericFill<IfcReinforcingElement>(const DB& db, const LIST& params, IfcReinforcingElement* in)
  3630. {
  3631. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementComponent*>(in));
  3632. // this data structure is not used yet, so there is no code generated to fill its members
  3633. return base;
  3634. }
  3635. // -----------------------------------------------------------------------------------------------------------
  3636. template <> size_t GenericFill<IfcReinforcingMesh>(const DB& db, const LIST& params, IfcReinforcingMesh* in)
  3637. {
  3638. size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in));
  3639. // this data structure is not used yet, so there is no code generated to fill its members
  3640. return base;
  3641. }
  3642. // -----------------------------------------------------------------------------------------------------------
  3643. template <> size_t GenericFill<IfcFillAreaStyleTiles>(const DB& db, const LIST& params, IfcFillAreaStyleTiles* in)
  3644. {
  3645. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3646. // this data structure is not used yet, so there is no code generated to fill its members
  3647. return base;
  3648. }
  3649. // -----------------------------------------------------------------------------------------------------------
  3650. template <> size_t GenericFill<IfcCondition>(const DB& db, const LIST& params, IfcCondition* in)
  3651. {
  3652. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  3653. // this data structure is not used yet, so there is no code generated to fill its members
  3654. return base;
  3655. }
  3656. // -----------------------------------------------------------------------------------------------------------
  3657. template <> size_t GenericFill<IfcEvaporativeCoolerType>(const DB& db, const LIST& params, IfcEvaporativeCoolerType* in)
  3658. {
  3659. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  3660. // this data structure is not used yet, so there is no code generated to fill its members
  3661. return base;
  3662. }
  3663. // -----------------------------------------------------------------------------------------------------------
  3664. template <> size_t GenericFill<IfcControllerType>(const DB& db, const LIST& params, IfcControllerType* in)
  3665. {
  3666. size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in));
  3667. // this data structure is not used yet, so there is no code generated to fill its members
  3668. return base;
  3669. }
  3670. // -----------------------------------------------------------------------------------------------------------
  3671. template <> size_t GenericFill<IfcStructuralLinearAction>(const DB& db, const LIST& params, IfcStructuralLinearAction* in)
  3672. {
  3673. size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in));
  3674. // this data structure is not used yet, so there is no code generated to fill its members
  3675. return base;
  3676. }
  3677. // -----------------------------------------------------------------------------------------------------------
  3678. template <> size_t GenericFill<IfcStructuralLinearActionVarying>(const DB& db, const LIST& params, IfcStructuralLinearActionVarying* in)
  3679. {
  3680. size_t base = GenericFill(db,params,static_cast<IfcStructuralLinearAction*>(in));
  3681. // this data structure is not used yet, so there is no code generated to fill its members
  3682. return base;
  3683. }
  3684. // -----------------------------------------------------------------------------------------------------------
  3685. template <> size_t GenericFill<IfcDoorStyle>(const DB& db, const LIST& params, IfcDoorStyle* in)
  3686. {
  3687. size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in));
  3688. // this data structure is not used yet, so there is no code generated to fill its members
  3689. return base;
  3690. }
  3691. // -----------------------------------------------------------------------------------------------------------
  3692. template <> size_t GenericFill<IfcTerminatorSymbol>(const DB& db, const LIST& params, IfcTerminatorSymbol* in)
  3693. {
  3694. size_t base = GenericFill(db,params,static_cast<IfcAnnotationSymbolOccurrence*>(in));
  3695. // this data structure is not used yet, so there is no code generated to fill its members
  3696. return base;
  3697. }
  3698. // -----------------------------------------------------------------------------------------------------------
  3699. template <> size_t GenericFill<IfcJunctionBoxType>(const DB& db, const LIST& params, IfcJunctionBoxType* in)
  3700. {
  3701. size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in));
  3702. // this data structure is not used yet, so there is no code generated to fill its members
  3703. return base;
  3704. }
  3705. // -----------------------------------------------------------------------------------------------------------
  3706. template <> size_t GenericFill<IfcElementAssembly>(const DB& db, const LIST& params, IfcElementAssembly* in)
  3707. {
  3708. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  3709. // this data structure is not used yet, so there is no code generated to fill its members
  3710. return base;
  3711. }
  3712. // -----------------------------------------------------------------------------------------------------------
  3713. template <> size_t GenericFill<IfcStackTerminalType>(const DB& db, const LIST& params, IfcStackTerminalType* in)
  3714. {
  3715. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  3716. // this data structure is not used yet, so there is no code generated to fill its members
  3717. return base;
  3718. }
  3719. // -----------------------------------------------------------------------------------------------------------
  3720. template <> size_t GenericFill<IfcStairFlight>(const DB& db, const LIST& params, IfcStairFlight* in)
  3721. {
  3722. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3723. // this data structure is not used yet, so there is no code generated to fill its members
  3724. return base;
  3725. }
  3726. // -----------------------------------------------------------------------------------------------------------
  3727. template <> size_t GenericFill<IfcCircle>(const DB& db, const LIST& params, IfcCircle* in)
  3728. {
  3729. size_t base = GenericFill(db,params,static_cast<IfcConic*>(in));
  3730. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcCircle"); } do { // convert the 'Radius' argument
  3731. boost::shared_ptr<const DataType> arg = params[base++];
  3732. try { GenericConvert( in->Radius, arg, db ); break; }
  3733. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCircle to be a `IfcPositiveLengthMeasure`")); }
  3734. } while(0);
  3735. return base;
  3736. }
  3737. // -----------------------------------------------------------------------------------------------------------
  3738. template <> size_t GenericFill<IfcFurnitureType>(const DB& db, const LIST& params, IfcFurnitureType* in)
  3739. {
  3740. size_t base = GenericFill(db,params,static_cast<IfcFurnishingElementType*>(in));
  3741. // this data structure is not used yet, so there is no code generated to fill its members
  3742. return base;
  3743. }
  3744. // -----------------------------------------------------------------------------------------------------------
  3745. template <> size_t GenericFill<IfcEdgeLoop>(const DB& db, const LIST& params, IfcEdgeLoop* in)
  3746. {
  3747. size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in));
  3748. // this data structure is not used yet, so there is no code generated to fill its members
  3749. return base;
  3750. }
  3751. // -----------------------------------------------------------------------------------------------------------
  3752. template <> size_t GenericFill<IfcElectricalElement>(const DB& db, const LIST& params, IfcElectricalElement* in)
  3753. {
  3754. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  3755. // this data structure is not used yet, so there is no code generated to fill its members
  3756. return base;
  3757. }
  3758. // -----------------------------------------------------------------------------------------------------------
  3759. template <> size_t GenericFill<IfcStructuralCurveMember>(const DB& db, const LIST& params, IfcStructuralCurveMember* in)
  3760. {
  3761. size_t base = GenericFill(db,params,static_cast<IfcStructuralMember*>(in));
  3762. // this data structure is not used yet, so there is no code generated to fill its members
  3763. return base;
  3764. }
  3765. // -----------------------------------------------------------------------------------------------------------
  3766. template <> size_t GenericFill<IfcStructuralCurveMemberVarying>(const DB& db, const LIST& params, IfcStructuralCurveMemberVarying* in)
  3767. {
  3768. size_t base = GenericFill(db,params,static_cast<IfcStructuralCurveMember*>(in));
  3769. // this data structure is not used yet, so there is no code generated to fill its members
  3770. return base;
  3771. }
  3772. // -----------------------------------------------------------------------------------------------------------
  3773. template <> size_t GenericFill<IfcRepresentationMap>(const DB& db, const LIST& params, IfcRepresentationMap* in)
  3774. {
  3775. size_t base = 0;
  3776. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcRepresentationMap"); } do { // convert the 'MappingOrigin' argument
  3777. boost::shared_ptr<const DataType> arg = params[base++];
  3778. try { GenericConvert( in->MappingOrigin, arg, db ); break; }
  3779. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcRepresentationMap to be a `IfcAxis2Placement`")); }
  3780. } while(0);
  3781. do { // convert the 'MappedRepresentation' argument
  3782. boost::shared_ptr<const DataType> arg = params[base++];
  3783. try { GenericConvert( in->MappedRepresentation, arg, db ); break; }
  3784. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcRepresentationMap to be a `IfcRepresentation`")); }
  3785. } while(0);
  3786. return base;
  3787. }
  3788. // -----------------------------------------------------------------------------------------------------------
  3789. template <> size_t GenericFill<IfcSpaceHeaterType>(const DB& db, const LIST& params, IfcSpaceHeaterType* in)
  3790. {
  3791. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  3792. // this data structure is not used yet, so there is no code generated to fill its members
  3793. return base;
  3794. }
  3795. // -----------------------------------------------------------------------------------------------------------
  3796. template <> size_t GenericFill<IfcGridPlacement>(const DB& db, const LIST& params, IfcGridPlacement* in)
  3797. {
  3798. size_t base = GenericFill(db,params,static_cast<IfcObjectPlacement*>(in));
  3799. // this data structure is not used yet, so there is no code generated to fill its members
  3800. return base;
  3801. }
  3802. // -----------------------------------------------------------------------------------------------------------
  3803. template <> size_t GenericFill<IfcCartesianTransformationOperator2D>(const DB& db, const LIST& params, IfcCartesianTransformationOperator2D* in)
  3804. {
  3805. size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator*>(in));
  3806. // this data structure is not used yet, so there is no code generated to fill its members
  3807. return base;
  3808. }
  3809. // -----------------------------------------------------------------------------------------------------------
  3810. template <> size_t GenericFill<IfcCartesianTransformationOperator2DnonUniform>(const DB& db, const LIST& params, IfcCartesianTransformationOperator2DnonUniform* in)
  3811. {
  3812. size_t base = GenericFill(db,params,static_cast<IfcCartesianTransformationOperator2D*>(in));
  3813. // this data structure is not used yet, so there is no code generated to fill its members
  3814. return base;
  3815. }
  3816. // -----------------------------------------------------------------------------------------------------------
  3817. template <> size_t GenericFill<IfcAsset>(const DB& db, const LIST& params, IfcAsset* in)
  3818. {
  3819. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  3820. // this data structure is not used yet, so there is no code generated to fill its members
  3821. return base;
  3822. }
  3823. // -----------------------------------------------------------------------------------------------------------
  3824. template <> size_t GenericFill<IfcConstructionEquipmentResource>(const DB& db, const LIST& params, IfcConstructionEquipmentResource* in)
  3825. {
  3826. size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in));
  3827. // this data structure is not used yet, so there is no code generated to fill its members
  3828. return base;
  3829. }
  3830. // -----------------------------------------------------------------------------------------------------------
  3831. template <> size_t GenericFill<IfcRelFillsElement>(const DB& db, const LIST& params, IfcRelFillsElement* in)
  3832. {
  3833. size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in));
  3834. if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelFillsElement"); } do { // convert the 'RelatingOpeningElement' argument
  3835. boost::shared_ptr<const DataType> arg = params[base++];
  3836. try { GenericConvert( in->RelatingOpeningElement, arg, db ); break; }
  3837. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelFillsElement to be a `IfcOpeningElement`")); }
  3838. } while(0);
  3839. do { // convert the 'RelatedBuildingElement' argument
  3840. boost::shared_ptr<const DataType> arg = params[base++];
  3841. try { GenericConvert( in->RelatedBuildingElement, arg, db ); break; }
  3842. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelFillsElement to be a `IfcElement`")); }
  3843. } while(0);
  3844. return base;
  3845. }
  3846. // -----------------------------------------------------------------------------------------------------------
  3847. template <> size_t GenericFill<IfcAnnotationFillArea>(const DB& db, const LIST& params, IfcAnnotationFillArea* in)
  3848. {
  3849. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3850. // this data structure is not used yet, so there is no code generated to fill its members
  3851. return base;
  3852. }
  3853. // -----------------------------------------------------------------------------------------------------------
  3854. template <> size_t GenericFill<IfcDerivedProfileDef>(const DB& db, const LIST& params, IfcDerivedProfileDef* in)
  3855. {
  3856. size_t base = GenericFill(db,params,static_cast<IfcProfileDef*>(in));
  3857. // this data structure is not used yet, so there is no code generated to fill its members
  3858. return base;
  3859. }
  3860. // -----------------------------------------------------------------------------------------------------------
  3861. template <> size_t GenericFill<IfcEnergyConversionDevice>(const DB& db, const LIST& params, IfcEnergyConversionDevice* in)
  3862. {
  3863. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  3864. // this data structure is not used yet, so there is no code generated to fill its members
  3865. return base;
  3866. }
  3867. // -----------------------------------------------------------------------------------------------------------
  3868. template <> size_t GenericFill<IfcCraneRailAShapeProfileDef>(const DB& db, const LIST& params, IfcCraneRailAShapeProfileDef* in)
  3869. {
  3870. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  3871. // this data structure is not used yet, so there is no code generated to fill its members
  3872. return base;
  3873. }
  3874. // -----------------------------------------------------------------------------------------------------------
  3875. template <> size_t GenericFill<IfcStructuralResultGroup>(const DB& db, const LIST& params, IfcStructuralResultGroup* in)
  3876. {
  3877. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  3878. // this data structure is not used yet, so there is no code generated to fill its members
  3879. return base;
  3880. }
  3881. // -----------------------------------------------------------------------------------------------------------
  3882. template <> size_t GenericFill<IfcWasteTerminalType>(const DB& db, const LIST& params, IfcWasteTerminalType* in)
  3883. {
  3884. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  3885. // this data structure is not used yet, so there is no code generated to fill its members
  3886. return base;
  3887. }
  3888. // -----------------------------------------------------------------------------------------------------------
  3889. template <> size_t GenericFill<IfcSensorType>(const DB& db, const LIST& params, IfcSensorType* in)
  3890. {
  3891. size_t base = GenericFill(db,params,static_cast<IfcDistributionControlElementType*>(in));
  3892. // this data structure is not used yet, so there is no code generated to fill its members
  3893. return base;
  3894. }
  3895. // -----------------------------------------------------------------------------------------------------------
  3896. template <> size_t GenericFill<IfcAngularDimension>(const DB& db, const LIST& params, IfcAngularDimension* in)
  3897. {
  3898. size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in));
  3899. // this data structure is not used yet, so there is no code generated to fill its members
  3900. return base;
  3901. }
  3902. // -----------------------------------------------------------------------------------------------------------
  3903. template <> size_t GenericFill<IfcRoof>(const DB& db, const LIST& params, IfcRoof* in)
  3904. {
  3905. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3906. // this data structure is not used yet, so there is no code generated to fill its members
  3907. return base;
  3908. }
  3909. // -----------------------------------------------------------------------------------------------------------
  3910. template <> size_t GenericFill<IfcCondenserType>(const DB& db, const LIST& params, IfcCondenserType* in)
  3911. {
  3912. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  3913. // this data structure is not used yet, so there is no code generated to fill its members
  3914. return base;
  3915. }
  3916. // -----------------------------------------------------------------------------------------------------------
  3917. template <> size_t GenericFill<IfcRelAggregates>(const DB& db, const LIST& params, IfcRelAggregates* in)
  3918. {
  3919. size_t base = GenericFill(db,params,static_cast<IfcRelDecomposes*>(in));
  3920. if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelAggregates"); } return base;
  3921. }
  3922. // -----------------------------------------------------------------------------------------------------------
  3923. template <> size_t GenericFill<IfcPlate>(const DB& db, const LIST& params, IfcPlate* in)
  3924. {
  3925. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3926. // this data structure is not used yet, so there is no code generated to fill its members
  3927. return base;
  3928. }
  3929. // -----------------------------------------------------------------------------------------------------------
  3930. template <> size_t GenericFill<IfcLine>(const DB& db, const LIST& params, IfcLine* in)
  3931. {
  3932. size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in));
  3933. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcLine"); } do { // convert the 'Pnt' argument
  3934. boost::shared_ptr<const DataType> arg = params[base++];
  3935. try { GenericConvert( in->Pnt, arg, db ); break; }
  3936. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcLine to be a `IfcCartesianPoint`")); }
  3937. } while(0);
  3938. do { // convert the 'Dir' argument
  3939. boost::shared_ptr<const DataType> arg = params[base++];
  3940. try { GenericConvert( in->Dir, arg, db ); break; }
  3941. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcLine to be a `IfcVector`")); }
  3942. } while(0);
  3943. return base;
  3944. }
  3945. // -----------------------------------------------------------------------------------------------------------
  3946. template <> size_t GenericFill<IfcOrderAction>(const DB& db, const LIST& params, IfcOrderAction* in)
  3947. {
  3948. size_t base = GenericFill(db,params,static_cast<IfcTask*>(in));
  3949. // this data structure is not used yet, so there is no code generated to fill its members
  3950. return base;
  3951. }
  3952. // -----------------------------------------------------------------------------------------------------------
  3953. template <> size_t GenericFill<IfcPlanarExtent>(const DB& db, const LIST& params, IfcPlanarExtent* in)
  3954. {
  3955. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  3956. // this data structure is not used yet, so there is no code generated to fill its members
  3957. return base;
  3958. }
  3959. // -----------------------------------------------------------------------------------------------------------
  3960. template <> size_t GenericFill<IfcPlanarBox>(const DB& db, const LIST& params, IfcPlanarBox* in)
  3961. {
  3962. size_t base = GenericFill(db,params,static_cast<IfcPlanarExtent*>(in));
  3963. // this data structure is not used yet, so there is no code generated to fill its members
  3964. return base;
  3965. }
  3966. // -----------------------------------------------------------------------------------------------------------
  3967. template <> size_t GenericFill<IfcSpaceType>(const DB& db, const LIST& params, IfcSpaceType* in)
  3968. {
  3969. size_t base = GenericFill(db,params,static_cast<IfcSpatialStructureElementType*>(in));
  3970. // this data structure is not used yet, so there is no code generated to fill its members
  3971. return base;
  3972. }
  3973. // -----------------------------------------------------------------------------------------------------------
  3974. template <> size_t GenericFill<IfcCostSchedule>(const DB& db, const LIST& params, IfcCostSchedule* in)
  3975. {
  3976. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  3977. // this data structure is not used yet, so there is no code generated to fill its members
  3978. return base;
  3979. }
  3980. // -----------------------------------------------------------------------------------------------------------
  3981. template <> size_t GenericFill<IfcBuildingElementProxy>(const DB& db, const LIST& params, IfcBuildingElementProxy* in)
  3982. {
  3983. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  3984. // this data structure is not used yet, so there is no code generated to fill its members
  3985. return base;
  3986. }
  3987. // -----------------------------------------------------------------------------------------------------------
  3988. template <> size_t GenericFill<IfcDuctFittingType>(const DB& db, const LIST& params, IfcDuctFittingType* in)
  3989. {
  3990. size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in));
  3991. // this data structure is not used yet, so there is no code generated to fill its members
  3992. return base;
  3993. }
  3994. // -----------------------------------------------------------------------------------------------------------
  3995. template <> size_t GenericFill<IfcSanitaryTerminalType>(const DB& db, const LIST& params, IfcSanitaryTerminalType* in)
  3996. {
  3997. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  3998. // this data structure is not used yet, so there is no code generated to fill its members
  3999. return base;
  4000. }
  4001. // -----------------------------------------------------------------------------------------------------------
  4002. template <> size_t GenericFill<IfcTShapeProfileDef>(const DB& db, const LIST& params, IfcTShapeProfileDef* in)
  4003. {
  4004. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  4005. // this data structure is not used yet, so there is no code generated to fill its members
  4006. return base;
  4007. }
  4008. // -----------------------------------------------------------------------------------------------------------
  4009. template <> size_t GenericFill<IfcEquipmentElement>(const DB& db, const LIST& params, IfcEquipmentElement* in)
  4010. {
  4011. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  4012. // this data structure is not used yet, so there is no code generated to fill its members
  4013. return base;
  4014. }
  4015. // -----------------------------------------------------------------------------------------------------------
  4016. template <> size_t GenericFill<IfcVertexLoop>(const DB& db, const LIST& params, IfcVertexLoop* in)
  4017. {
  4018. size_t base = GenericFill(db,params,static_cast<IfcLoop*>(in));
  4019. // this data structure is not used yet, so there is no code generated to fill its members
  4020. return base;
  4021. }
  4022. // -----------------------------------------------------------------------------------------------------------
  4023. template <> size_t GenericFill<IfcVirtualElement>(const DB& db, const LIST& params, IfcVirtualElement* in)
  4024. {
  4025. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  4026. // this data structure is not used yet, so there is no code generated to fill its members
  4027. return base;
  4028. }
  4029. // -----------------------------------------------------------------------------------------------------------
  4030. template <> size_t GenericFill<IfcVertex>(const DB& db, const LIST& params, IfcVertex* in)
  4031. {
  4032. size_t base = GenericFill(db,params,static_cast<IfcTopologicalRepresentationItem*>(in));
  4033. // this data structure is not used yet, so there is no code generated to fill its members
  4034. return base;
  4035. }
  4036. // -----------------------------------------------------------------------------------------------------------
  4037. template <> size_t GenericFill<IfcVertexPoint>(const DB& db, const LIST& params, IfcVertexPoint* in)
  4038. {
  4039. size_t base = GenericFill(db,params,static_cast<IfcVertex*>(in));
  4040. // this data structure is not used yet, so there is no code generated to fill its members
  4041. return base;
  4042. }
  4043. // -----------------------------------------------------------------------------------------------------------
  4044. template <> size_t GenericFill<IfcTendonAnchor>(const DB& db, const LIST& params, IfcTendonAnchor* in)
  4045. {
  4046. size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in));
  4047. // this data structure is not used yet, so there is no code generated to fill its members
  4048. return base;
  4049. }
  4050. // -----------------------------------------------------------------------------------------------------------
  4051. template <> size_t GenericFill<IfcProjectionElement>(const DB& db, const LIST& params, IfcProjectionElement* in)
  4052. {
  4053. size_t base = GenericFill(db,params,static_cast<IfcFeatureElementAddition*>(in));
  4054. // this data structure is not used yet, so there is no code generated to fill its members
  4055. return base;
  4056. }
  4057. // -----------------------------------------------------------------------------------------------------------
  4058. template <> size_t GenericFill<IfcProtectiveDeviceType>(const DB& db, const LIST& params, IfcProtectiveDeviceType* in)
  4059. {
  4060. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  4061. // this data structure is not used yet, so there is no code generated to fill its members
  4062. return base;
  4063. }
  4064. // -----------------------------------------------------------------------------------------------------------
  4065. template <> size_t GenericFill<IfcAnnotationSurfaceOccurrence>(const DB& db, const LIST& params, IfcAnnotationSurfaceOccurrence* in)
  4066. {
  4067. size_t base = GenericFill(db,params,static_cast<IfcAnnotationOccurrence*>(in));
  4068. // this data structure is not used yet, so there is no code generated to fill its members
  4069. return base;
  4070. }
  4071. // -----------------------------------------------------------------------------------------------------------
  4072. template <> size_t GenericFill<IfcRampFlight>(const DB& db, const LIST& params, IfcRampFlight* in)
  4073. {
  4074. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  4075. // this data structure is not used yet, so there is no code generated to fill its members
  4076. return base;
  4077. }
  4078. // -----------------------------------------------------------------------------------------------------------
  4079. template <> size_t GenericFill<IfcPile>(const DB& db, const LIST& params, IfcPile* in)
  4080. {
  4081. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  4082. // this data structure is not used yet, so there is no code generated to fill its members
  4083. return base;
  4084. }
  4085. // -----------------------------------------------------------------------------------------------------------
  4086. template <> size_t GenericFill<IfcDimensionCurveTerminator>(const DB& db, const LIST& params, IfcDimensionCurveTerminator* in)
  4087. {
  4088. size_t base = GenericFill(db,params,static_cast<IfcTerminatorSymbol*>(in));
  4089. // this data structure is not used yet, so there is no code generated to fill its members
  4090. return base;
  4091. }
  4092. // -----------------------------------------------------------------------------------------------------------
  4093. template <> size_t GenericFill<IfcArbitraryProfileDefWithVoids>(const DB& db, const LIST& params, IfcArbitraryProfileDefWithVoids* in)
  4094. {
  4095. size_t base = GenericFill(db,params,static_cast<IfcArbitraryClosedProfileDef*>(in));
  4096. // this data structure is not used yet, so there is no code generated to fill its members
  4097. return base;
  4098. }
  4099. // -----------------------------------------------------------------------------------------------------------
  4100. template <> size_t GenericFill<IfcOutletType>(const DB& db, const LIST& params, IfcOutletType* in)
  4101. {
  4102. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  4103. // this data structure is not used yet, so there is no code generated to fill its members
  4104. return base;
  4105. }
  4106. // -----------------------------------------------------------------------------------------------------------
  4107. template <> size_t GenericFill<IfcLightSourceSpot>(const DB& db, const LIST& params, IfcLightSourceSpot* in)
  4108. {
  4109. size_t base = GenericFill(db,params,static_cast<IfcLightSourcePositional*>(in));
  4110. // this data structure is not used yet, so there is no code generated to fill its members
  4111. return base;
  4112. }
  4113. // -----------------------------------------------------------------------------------------------------------
  4114. template <> size_t GenericFill<IfcDistributionChamberElementType>(const DB& db, const LIST& params, IfcDistributionChamberElementType* in)
  4115. {
  4116. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElementType*>(in));
  4117. // this data structure is not used yet, so there is no code generated to fill its members
  4118. return base;
  4119. }
  4120. // -----------------------------------------------------------------------------------------------------------
  4121. template <> size_t GenericFill<IfcWallType>(const DB& db, const LIST& params, IfcWallType* in)
  4122. {
  4123. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  4124. // this data structure is not used yet, so there is no code generated to fill its members
  4125. return base;
  4126. }
  4127. // -----------------------------------------------------------------------------------------------------------
  4128. template <> size_t GenericFill<IfcConstructionProductResource>(const DB& db, const LIST& params, IfcConstructionProductResource* in)
  4129. {
  4130. size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in));
  4131. // this data structure is not used yet, so there is no code generated to fill its members
  4132. return base;
  4133. }
  4134. // -----------------------------------------------------------------------------------------------------------
  4135. template <> size_t GenericFill<IfcElectricalCircuit>(const DB& db, const LIST& params, IfcElectricalCircuit* in)
  4136. {
  4137. size_t base = GenericFill(db,params,static_cast<IfcSystem*>(in));
  4138. // this data structure is not used yet, so there is no code generated to fill its members
  4139. return base;
  4140. }
  4141. // -----------------------------------------------------------------------------------------------------------
  4142. template <> size_t GenericFill<IfcCoveringType>(const DB& db, const LIST& params, IfcCoveringType* in)
  4143. {
  4144. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  4145. // this data structure is not used yet, so there is no code generated to fill its members
  4146. return base;
  4147. }
  4148. // -----------------------------------------------------------------------------------------------------------
  4149. template <> size_t GenericFill<IfcAirTerminalBoxType>(const DB& db, const LIST& params, IfcAirTerminalBoxType* in)
  4150. {
  4151. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  4152. // this data structure is not used yet, so there is no code generated to fill its members
  4153. return base;
  4154. }
  4155. // -----------------------------------------------------------------------------------------------------------
  4156. template <> size_t GenericFill<IfcCableCarrierFittingType>(const DB& db, const LIST& params, IfcCableCarrierFittingType* in)
  4157. {
  4158. size_t base = GenericFill(db,params,static_cast<IfcFlowFittingType*>(in));
  4159. // this data structure is not used yet, so there is no code generated to fill its members
  4160. return base;
  4161. }
  4162. // -----------------------------------------------------------------------------------------------------------
  4163. template <> size_t GenericFill<IfcWindowStyle>(const DB& db, const LIST& params, IfcWindowStyle* in)
  4164. {
  4165. size_t base = GenericFill(db,params,static_cast<IfcTypeProduct*>(in));
  4166. // this data structure is not used yet, so there is no code generated to fill its members
  4167. return base;
  4168. }
  4169. // -----------------------------------------------------------------------------------------------------------
  4170. template <> size_t GenericFill<IfcStairFlightType>(const DB& db, const LIST& params, IfcStairFlightType* in)
  4171. {
  4172. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  4173. // this data structure is not used yet, so there is no code generated to fill its members
  4174. return base;
  4175. }
  4176. // -----------------------------------------------------------------------------------------------------------
  4177. template <> size_t GenericFill<IfcPointOnCurve>(const DB& db, const LIST& params, IfcPointOnCurve* in)
  4178. {
  4179. size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in));
  4180. // this data structure is not used yet, so there is no code generated to fill its members
  4181. return base;
  4182. }
  4183. // -----------------------------------------------------------------------------------------------------------
  4184. template <> size_t GenericFill<IfcTubeBundleType>(const DB& db, const LIST& params, IfcTubeBundleType* in)
  4185. {
  4186. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  4187. // this data structure is not used yet, so there is no code generated to fill its members
  4188. return base;
  4189. }
  4190. // -----------------------------------------------------------------------------------------------------------
  4191. template <> size_t GenericFill<IfcSurfaceStyleShading>(const DB& db, const LIST& params, IfcSurfaceStyleShading* in)
  4192. {
  4193. size_t base = 0;
  4194. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcSurfaceStyleShading"); } do { // convert the 'SurfaceColour' argument
  4195. boost::shared_ptr<const DataType> arg = params[base++];
  4196. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcSurfaceStyleShading,1>::aux_is_derived[0]=true; break; }
  4197. try { GenericConvert( in->SurfaceColour, arg, db ); break; }
  4198. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSurfaceStyleShading to be a `IfcColourRgb`")); }
  4199. } while(0);
  4200. return base;
  4201. }
  4202. // -----------------------------------------------------------------------------------------------------------
  4203. template <> size_t GenericFill<IfcSurfaceStyleRendering>(const DB& db, const LIST& params, IfcSurfaceStyleRendering* in)
  4204. {
  4205. size_t base = GenericFill(db,params,static_cast<IfcSurfaceStyleShading*>(in));
  4206. if (params.GetSize() < 9) { throw STEP::TypeError("expected 9 arguments to IfcSurfaceStyleRendering"); } do { // convert the 'Transparency' argument
  4207. boost::shared_ptr<const DataType> arg = params[base++];
  4208. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4209. try { GenericConvert( in->Transparency, arg, db ); break; }
  4210. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSurfaceStyleRendering to be a `IfcNormalisedRatioMeasure`")); }
  4211. } while(0);
  4212. do { // convert the 'DiffuseColour' argument
  4213. boost::shared_ptr<const DataType> arg = params[base++];
  4214. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4215. try { GenericConvert( in->DiffuseColour, arg, db ); break; }
  4216. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); }
  4217. } while(0);
  4218. do { // convert the 'TransmissionColour' argument
  4219. boost::shared_ptr<const DataType> arg = params[base++];
  4220. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4221. try { GenericConvert( in->TransmissionColour, arg, db ); break; }
  4222. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); }
  4223. } while(0);
  4224. do { // convert the 'DiffuseTransmissionColour' argument
  4225. boost::shared_ptr<const DataType> arg = params[base++];
  4226. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4227. try { GenericConvert( in->DiffuseTransmissionColour, arg, db ); break; }
  4228. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); }
  4229. } while(0);
  4230. do { // convert the 'ReflectionColour' argument
  4231. boost::shared_ptr<const DataType> arg = params[base++];
  4232. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4233. try { GenericConvert( in->ReflectionColour, arg, db ); break; }
  4234. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); }
  4235. } while(0);
  4236. do { // convert the 'SpecularColour' argument
  4237. boost::shared_ptr<const DataType> arg = params[base++];
  4238. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4239. try { GenericConvert( in->SpecularColour, arg, db ); break; }
  4240. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 6 to IfcSurfaceStyleRendering to be a `IfcColourOrFactor`")); }
  4241. } while(0);
  4242. do { // convert the 'SpecularHighlight' argument
  4243. boost::shared_ptr<const DataType> arg = params[base++];
  4244. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4245. try { GenericConvert( in->SpecularHighlight, arg, db ); break; }
  4246. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 7 to IfcSurfaceStyleRendering to be a `IfcSpecularHighlightSelect`")); }
  4247. } while(0);
  4248. do { // convert the 'ReflectanceMethod' argument
  4249. boost::shared_ptr<const DataType> arg = params[base++];
  4250. try { GenericConvert( in->ReflectanceMethod, arg, db ); break; }
  4251. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSurfaceStyleRendering to be a `IfcReflectanceMethodEnum`")); }
  4252. } while(0);
  4253. return base;
  4254. }
  4255. // -----------------------------------------------------------------------------------------------------------
  4256. template <> size_t GenericFill<IfcProxy>(const DB& db, const LIST& params, IfcProxy* in)
  4257. {
  4258. size_t base = GenericFill(db,params,static_cast<IfcProduct*>(in));
  4259. // this data structure is not used yet, so there is no code generated to fill its members
  4260. return base;
  4261. }
  4262. // -----------------------------------------------------------------------------------------------------------
  4263. template <> size_t GenericFill<IfcTendon>(const DB& db, const LIST& params, IfcTendon* in)
  4264. {
  4265. size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in));
  4266. // this data structure is not used yet, so there is no code generated to fill its members
  4267. return base;
  4268. }
  4269. // -----------------------------------------------------------------------------------------------------------
  4270. template <> size_t GenericFill<IfcSurfaceStyle>(const DB& db, const LIST& params, IfcSurfaceStyle* in)
  4271. {
  4272. size_t base = GenericFill(db,params,static_cast<IfcPresentationStyle*>(in));
  4273. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcSurfaceStyle"); } do { // convert the 'Side' argument
  4274. boost::shared_ptr<const DataType> arg = params[base++];
  4275. try { GenericConvert( in->Side, arg, db ); break; }
  4276. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcSurfaceStyle to be a `IfcSurfaceSide`")); }
  4277. } while(0);
  4278. do { // convert the 'Styles' argument
  4279. boost::shared_ptr<const DataType> arg = params[base++];
  4280. try { GenericConvert( in->Styles, arg, db ); break; }
  4281. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcSurfaceStyle to be a `SET [1:5] OF IfcSurfaceStyleElementSelect`")); }
  4282. } while(0);
  4283. return base;
  4284. }
  4285. // -----------------------------------------------------------------------------------------------------------
  4286. template <> size_t GenericFill<IfcGeometricRepresentationContext>(const DB& db, const LIST& params, IfcGeometricRepresentationContext* in)
  4287. {
  4288. size_t base = GenericFill(db,params,static_cast<IfcRepresentationContext*>(in));
  4289. if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcGeometricRepresentationContext"); } do { // convert the 'CoordinateSpaceDimension' argument
  4290. boost::shared_ptr<const DataType> arg = params[base++];
  4291. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[0]=true; break; }
  4292. try { GenericConvert( in->CoordinateSpaceDimension, arg, db ); break; }
  4293. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcGeometricRepresentationContext to be a `IfcDimensionCount`")); }
  4294. } while(0);
  4295. do { // convert the 'Precision' argument
  4296. boost::shared_ptr<const DataType> arg = params[base++];
  4297. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[1]=true; break; }
  4298. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4299. try { GenericConvert( in->Precision, arg, db ); break; }
  4300. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 3 to IfcGeometricRepresentationContext to be a `REAL`")); }
  4301. } while(0);
  4302. do { // convert the 'WorldCoordinateSystem' argument
  4303. boost::shared_ptr<const DataType> arg = params[base++];
  4304. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[2]=true; break; }
  4305. try { GenericConvert( in->WorldCoordinateSystem, arg, db ); break; }
  4306. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcGeometricRepresentationContext to be a `IfcAxis2Placement`")); }
  4307. } while(0);
  4308. do { // convert the 'TrueNorth' argument
  4309. boost::shared_ptr<const DataType> arg = params[base++];
  4310. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcGeometricRepresentationContext,4>::aux_is_derived[3]=true; break; }
  4311. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4312. try { GenericConvert( in->TrueNorth, arg, db ); break; }
  4313. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcGeometricRepresentationContext to be a `IfcDirection`")); }
  4314. } while(0);
  4315. return base;
  4316. }
  4317. // -----------------------------------------------------------------------------------------------------------
  4318. template <> size_t GenericFill<IfcGeometricRepresentationSubContext>(const DB& db, const LIST& params, IfcGeometricRepresentationSubContext* in)
  4319. {
  4320. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationContext*>(in));
  4321. // this data structure is not used yet, so there is no code generated to fill its members
  4322. return base;
  4323. }
  4324. // -----------------------------------------------------------------------------------------------------------
  4325. template <> size_t GenericFill<IfcMotorConnectionType>(const DB& db, const LIST& params, IfcMotorConnectionType* in)
  4326. {
  4327. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  4328. // this data structure is not used yet, so there is no code generated to fill its members
  4329. return base;
  4330. }
  4331. // -----------------------------------------------------------------------------------------------------------
  4332. template <> size_t GenericFill<IfcValveType>(const DB& db, const LIST& params, IfcValveType* in)
  4333. {
  4334. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  4335. // this data structure is not used yet, so there is no code generated to fill its members
  4336. return base;
  4337. }
  4338. // -----------------------------------------------------------------------------------------------------------
  4339. template <> size_t GenericFill<IfcFlowSegment>(const DB& db, const LIST& params, IfcFlowSegment* in)
  4340. {
  4341. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  4342. // this data structure is not used yet, so there is no code generated to fill its members
  4343. return base;
  4344. }
  4345. // -----------------------------------------------------------------------------------------------------------
  4346. template <> size_t GenericFill<IfcWorkSchedule>(const DB& db, const LIST& params, IfcWorkSchedule* in)
  4347. {
  4348. size_t base = GenericFill(db,params,static_cast<IfcWorkControl*>(in));
  4349. // this data structure is not used yet, so there is no code generated to fill its members
  4350. return base;
  4351. }
  4352. // -----------------------------------------------------------------------------------------------------------
  4353. template <> size_t GenericFill<IfcDefinedSymbol>(const DB& db, const LIST& params, IfcDefinedSymbol* in)
  4354. {
  4355. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  4356. // this data structure is not used yet, so there is no code generated to fill its members
  4357. return base;
  4358. }
  4359. // -----------------------------------------------------------------------------------------------------------
  4360. template <> size_t GenericFill<IfcFurnishingElement>(const DB& db, const LIST& params, IfcFurnishingElement* in)
  4361. {
  4362. size_t base = GenericFill(db,params,static_cast<IfcElement*>(in));
  4363. // this data structure is not used yet, so there is no code generated to fill its members
  4364. return base;
  4365. }
  4366. // -----------------------------------------------------------------------------------------------------------
  4367. template <> size_t GenericFill<IfcBlock>(const DB& db, const LIST& params, IfcBlock* in)
  4368. {
  4369. size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in));
  4370. // this data structure is not used yet, so there is no code generated to fill its members
  4371. return base;
  4372. }
  4373. // -----------------------------------------------------------------------------------------------------------
  4374. template <> size_t GenericFill<IfcBooleanResult>(const DB& db, const LIST& params, IfcBooleanResult* in)
  4375. {
  4376. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  4377. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcBooleanResult"); } do { // convert the 'Operator' argument
  4378. boost::shared_ptr<const DataType> arg = params[base++];
  4379. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[0]=true; break; }
  4380. try { GenericConvert( in->Operator, arg, db ); break; }
  4381. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcBooleanResult to be a `IfcBooleanOperator`")); }
  4382. } while(0);
  4383. do { // convert the 'FirstOperand' argument
  4384. boost::shared_ptr<const DataType> arg = params[base++];
  4385. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[1]=true; break; }
  4386. try { GenericConvert( in->FirstOperand, arg, db ); break; }
  4387. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcBooleanResult to be a `IfcBooleanOperand`")); }
  4388. } while(0);
  4389. do { // convert the 'SecondOperand' argument
  4390. boost::shared_ptr<const DataType> arg = params[base++];
  4391. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcBooleanResult,3>::aux_is_derived[2]=true; break; }
  4392. try { GenericConvert( in->SecondOperand, arg, db ); break; }
  4393. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcBooleanResult to be a `IfcBooleanOperand`")); }
  4394. } while(0);
  4395. return base;
  4396. }
  4397. // -----------------------------------------------------------------------------------------------------------
  4398. template <> size_t GenericFill<IfcCostItem>(const DB& db, const LIST& params, IfcCostItem* in)
  4399. {
  4400. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  4401. // this data structure is not used yet, so there is no code generated to fill its members
  4402. return base;
  4403. }
  4404. // -----------------------------------------------------------------------------------------------------------
  4405. template <> size_t GenericFill<IfcAxis2Placement2D>(const DB& db, const LIST& params, IfcAxis2Placement2D* in)
  4406. {
  4407. size_t base = GenericFill(db,params,static_cast<IfcPlacement*>(in));
  4408. if (params.GetSize() < 2) { throw STEP::TypeError("expected 2 arguments to IfcAxis2Placement2D"); } do { // convert the 'RefDirection' argument
  4409. boost::shared_ptr<const DataType> arg = params[base++];
  4410. if (dynamic_cast<const UNSET*>(&*arg)) break;
  4411. try { GenericConvert( in->RefDirection, arg, db ); break; }
  4412. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcAxis2Placement2D to be a `IfcDirection`")); }
  4413. } while(0);
  4414. return base;
  4415. }
  4416. // -----------------------------------------------------------------------------------------------------------
  4417. template <> size_t GenericFill<IfcFilterType>(const DB& db, const LIST& params, IfcFilterType* in)
  4418. {
  4419. size_t base = GenericFill(db,params,static_cast<IfcFlowTreatmentDeviceType*>(in));
  4420. // this data structure is not used yet, so there is no code generated to fill its members
  4421. return base;
  4422. }
  4423. // -----------------------------------------------------------------------------------------------------------
  4424. template <> size_t GenericFill<IfcReinforcingBar>(const DB& db, const LIST& params, IfcReinforcingBar* in)
  4425. {
  4426. size_t base = GenericFill(db,params,static_cast<IfcReinforcingElement*>(in));
  4427. // this data structure is not used yet, so there is no code generated to fill its members
  4428. return base;
  4429. }
  4430. // -----------------------------------------------------------------------------------------------------------
  4431. template <> size_t GenericFill<IfcOrientedEdge>(const DB& db, const LIST& params, IfcOrientedEdge* in)
  4432. {
  4433. size_t base = GenericFill(db,params,static_cast<IfcEdge*>(in));
  4434. // this data structure is not used yet, so there is no code generated to fill its members
  4435. return base;
  4436. }
  4437. // -----------------------------------------------------------------------------------------------------------
  4438. template <> size_t GenericFill<IfcMember>(const DB& db, const LIST& params, IfcMember* in)
  4439. {
  4440. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  4441. // this data structure is not used yet, so there is no code generated to fill its members
  4442. return base;
  4443. }
  4444. // -----------------------------------------------------------------------------------------------------------
  4445. template <> size_t GenericFill<IfcSurfaceCurveSweptAreaSolid>(const DB& db, const LIST& params, IfcSurfaceCurveSweptAreaSolid* in)
  4446. {
  4447. size_t base = GenericFill(db,params,static_cast<IfcSweptAreaSolid*>(in));
  4448. // this data structure is not used yet, so there is no code generated to fill its members
  4449. return base;
  4450. }
  4451. // -----------------------------------------------------------------------------------------------------------
  4452. template <> size_t GenericFill<IfcElectricApplianceType>(const DB& db, const LIST& params, IfcElectricApplianceType* in)
  4453. {
  4454. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  4455. // this data structure is not used yet, so there is no code generated to fill its members
  4456. return base;
  4457. }
  4458. // -----------------------------------------------------------------------------------------------------------
  4459. template <> size_t GenericFill<IfcOpeningElement>(const DB& db, const LIST& params, IfcOpeningElement* in)
  4460. {
  4461. size_t base = GenericFill(db,params,static_cast<IfcFeatureElementSubtraction*>(in));
  4462. if (params.GetSize() < 8) { throw STEP::TypeError("expected 8 arguments to IfcOpeningElement"); } return base;
  4463. }
  4464. // -----------------------------------------------------------------------------------------------------------
  4465. template <> size_t GenericFill<IfcRoundedRectangleProfileDef>(const DB& db, const LIST& params, IfcRoundedRectangleProfileDef* in)
  4466. {
  4467. size_t base = GenericFill(db,params,static_cast<IfcRectangleProfileDef*>(in));
  4468. // this data structure is not used yet, so there is no code generated to fill its members
  4469. return base;
  4470. }
  4471. // -----------------------------------------------------------------------------------------------------------
  4472. template <> size_t GenericFill<IfcConstructionMaterialResource>(const DB& db, const LIST& params, IfcConstructionMaterialResource* in)
  4473. {
  4474. size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in));
  4475. // this data structure is not used yet, so there is no code generated to fill its members
  4476. return base;
  4477. }
  4478. // -----------------------------------------------------------------------------------------------------------
  4479. template <> size_t GenericFill<IfcCompositeCurveSegment>(const DB& db, const LIST& params, IfcCompositeCurveSegment* in)
  4480. {
  4481. size_t base = GenericFill(db,params,static_cast<IfcGeometricRepresentationItem*>(in));
  4482. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcCompositeCurveSegment"); } do { // convert the 'Transition' argument
  4483. boost::shared_ptr<const DataType> arg = params[base++];
  4484. try { GenericConvert( in->Transition, arg, db ); break; }
  4485. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCompositeCurveSegment to be a `IfcTransitionCode`")); }
  4486. } while(0);
  4487. do { // convert the 'SameSense' argument
  4488. boost::shared_ptr<const DataType> arg = params[base++];
  4489. try { GenericConvert( in->SameSense, arg, db ); break; }
  4490. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 1 to IfcCompositeCurveSegment to be a `BOOLEAN`")); }
  4491. } while(0);
  4492. do { // convert the 'ParentCurve' argument
  4493. boost::shared_ptr<const DataType> arg = params[base++];
  4494. try { GenericConvert( in->ParentCurve, arg, db ); break; }
  4495. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 2 to IfcCompositeCurveSegment to be a `IfcCurve`")); }
  4496. } while(0);
  4497. return base;
  4498. }
  4499. // -----------------------------------------------------------------------------------------------------------
  4500. template <> size_t GenericFill<IfcSweptSurface>(const DB& db, const LIST& params, IfcSweptSurface* in)
  4501. {
  4502. size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in));
  4503. // this data structure is not used yet, so there is no code generated to fill its members
  4504. return base;
  4505. }
  4506. // -----------------------------------------------------------------------------------------------------------
  4507. template <> size_t GenericFill<IfcSurfaceOfRevolution>(const DB& db, const LIST& params, IfcSurfaceOfRevolution* in)
  4508. {
  4509. size_t base = GenericFill(db,params,static_cast<IfcSweptSurface*>(in));
  4510. // this data structure is not used yet, so there is no code generated to fill its members
  4511. return base;
  4512. }
  4513. // -----------------------------------------------------------------------------------------------------------
  4514. template <> size_t GenericFill<IfcSphere>(const DB& db, const LIST& params, IfcSphere* in)
  4515. {
  4516. size_t base = GenericFill(db,params,static_cast<IfcCsgPrimitive3D*>(in));
  4517. // this data structure is not used yet, so there is no code generated to fill its members
  4518. return base;
  4519. }
  4520. // -----------------------------------------------------------------------------------------------------------
  4521. template <> size_t GenericFill<IfcPresentationStyleAssignment>(const DB& db, const LIST& params, IfcPresentationStyleAssignment* in)
  4522. {
  4523. size_t base = 0;
  4524. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPresentationStyleAssignment"); } do { // convert the 'Styles' argument
  4525. boost::shared_ptr<const DataType> arg = params[base++];
  4526. try { GenericConvert( in->Styles, arg, db ); break; }
  4527. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcPresentationStyleAssignment to be a `SET [1:?] OF IfcPresentationStyleSelect`")); }
  4528. } while(0);
  4529. return base;
  4530. }
  4531. // -----------------------------------------------------------------------------------------------------------
  4532. template <> size_t GenericFill<IfcElementarySurface>(const DB& db, const LIST& params, IfcElementarySurface* in)
  4533. {
  4534. size_t base = GenericFill(db,params,static_cast<IfcSurface*>(in));
  4535. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcElementarySurface"); } do { // convert the 'Position' argument
  4536. boost::shared_ptr<const DataType> arg = params[base++];
  4537. if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::IfcElementarySurface,1>::aux_is_derived[0]=true; break; }
  4538. try { GenericConvert( in->Position, arg, db ); break; }
  4539. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcElementarySurface to be a `IfcAxis2Placement3D`")); }
  4540. } while(0);
  4541. return base;
  4542. }
  4543. // -----------------------------------------------------------------------------------------------------------
  4544. template <> size_t GenericFill<IfcSlabType>(const DB& db, const LIST& params, IfcSlabType* in)
  4545. {
  4546. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  4547. // this data structure is not used yet, so there is no code generated to fill its members
  4548. return base;
  4549. }
  4550. // -----------------------------------------------------------------------------------------------------------
  4551. template <> size_t GenericFill<IfcEllipseProfileDef>(const DB& db, const LIST& params, IfcEllipseProfileDef* in)
  4552. {
  4553. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  4554. // this data structure is not used yet, so there is no code generated to fill its members
  4555. return base;
  4556. }
  4557. // -----------------------------------------------------------------------------------------------------------
  4558. template <> size_t GenericFill<IfcRelVoidsElement>(const DB& db, const LIST& params, IfcRelVoidsElement* in)
  4559. {
  4560. size_t base = GenericFill(db,params,static_cast<IfcRelConnects*>(in));
  4561. if (params.GetSize() < 6) { throw STEP::TypeError("expected 6 arguments to IfcRelVoidsElement"); } do { // convert the 'RelatingBuildingElement' argument
  4562. boost::shared_ptr<const DataType> arg = params[base++];
  4563. try { GenericConvert( in->RelatingBuildingElement, arg, db ); break; }
  4564. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 4 to IfcRelVoidsElement to be a `IfcElement`")); }
  4565. } while(0);
  4566. do { // convert the 'RelatedOpeningElement' argument
  4567. boost::shared_ptr<const DataType> arg = params[base++];
  4568. try { GenericConvert( in->RelatedOpeningElement, arg, db ); break; }
  4569. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 5 to IfcRelVoidsElement to be a `IfcFeatureElementSubtraction`")); }
  4570. } while(0);
  4571. return base;
  4572. }
  4573. // -----------------------------------------------------------------------------------------------------------
  4574. template <> size_t GenericFill<IfcTrapeziumProfileDef>(const DB& db, const LIST& params, IfcTrapeziumProfileDef* in)
  4575. {
  4576. size_t base = GenericFill(db,params,static_cast<IfcParameterizedProfileDef*>(in));
  4577. // this data structure is not used yet, so there is no code generated to fill its members
  4578. return base;
  4579. }
  4580. // -----------------------------------------------------------------------------------------------------------
  4581. template <> size_t GenericFill<IfcCartesianPoint>(const DB& db, const LIST& params, IfcCartesianPoint* in)
  4582. {
  4583. size_t base = GenericFill(db,params,static_cast<IfcPoint*>(in));
  4584. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcCartesianPoint"); } do { // convert the 'Coordinates' argument
  4585. boost::shared_ptr<const DataType> arg = params[base++];
  4586. try { GenericConvert( in->Coordinates, arg, db ); break; }
  4587. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcCartesianPoint to be a `LIST [1:3] OF IfcLengthMeasure`")); }
  4588. } while(0);
  4589. return base;
  4590. }
  4591. // -----------------------------------------------------------------------------------------------------------
  4592. template <> size_t GenericFill<IfcChamferEdgeFeature>(const DB& db, const LIST& params, IfcChamferEdgeFeature* in)
  4593. {
  4594. size_t base = GenericFill(db,params,static_cast<IfcEdgeFeature*>(in));
  4595. // this data structure is not used yet, so there is no code generated to fill its members
  4596. return base;
  4597. }
  4598. // -----------------------------------------------------------------------------------------------------------
  4599. template <> size_t GenericFill<IfcLightSourceDirectional>(const DB& db, const LIST& params, IfcLightSourceDirectional* in)
  4600. {
  4601. size_t base = GenericFill(db,params,static_cast<IfcLightSource*>(in));
  4602. // this data structure is not used yet, so there is no code generated to fill its members
  4603. return base;
  4604. }
  4605. // -----------------------------------------------------------------------------------------------------------
  4606. template <> size_t GenericFill<IfcAirToAirHeatRecoveryType>(const DB& db, const LIST& params, IfcAirToAirHeatRecoveryType* in)
  4607. {
  4608. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  4609. // this data structure is not used yet, so there is no code generated to fill its members
  4610. return base;
  4611. }
  4612. // -----------------------------------------------------------------------------------------------------------
  4613. template <> size_t GenericFill<IfcBoilerType>(const DB& db, const LIST& params, IfcBoilerType* in)
  4614. {
  4615. size_t base = GenericFill(db,params,static_cast<IfcEnergyConversionDeviceType*>(in));
  4616. // this data structure is not used yet, so there is no code generated to fill its members
  4617. return base;
  4618. }
  4619. // -----------------------------------------------------------------------------------------------------------
  4620. template <> size_t GenericFill<IfcOffsetCurve2D>(const DB& db, const LIST& params, IfcOffsetCurve2D* in)
  4621. {
  4622. size_t base = GenericFill(db,params,static_cast<IfcCurve*>(in));
  4623. // this data structure is not used yet, so there is no code generated to fill its members
  4624. return base;
  4625. }
  4626. // -----------------------------------------------------------------------------------------------------------
  4627. template <> size_t GenericFill<IfcSlab>(const DB& db, const LIST& params, IfcSlab* in)
  4628. {
  4629. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  4630. // this data structure is not used yet, so there is no code generated to fill its members
  4631. return base;
  4632. }
  4633. // -----------------------------------------------------------------------------------------------------------
  4634. template <> size_t GenericFill<IfcFastenerType>(const DB& db, const LIST& params, IfcFastenerType* in)
  4635. {
  4636. size_t base = GenericFill(db,params,static_cast<IfcElementComponentType*>(in));
  4637. // this data structure is not used yet, so there is no code generated to fill its members
  4638. return base;
  4639. }
  4640. // -----------------------------------------------------------------------------------------------------------
  4641. template <> size_t GenericFill<IfcMechanicalFastenerType>(const DB& db, const LIST& params, IfcMechanicalFastenerType* in)
  4642. {
  4643. size_t base = GenericFill(db,params,static_cast<IfcFastenerType*>(in));
  4644. // this data structure is not used yet, so there is no code generated to fill its members
  4645. return base;
  4646. }
  4647. // -----------------------------------------------------------------------------------------------------------
  4648. template <> size_t GenericFill<IfcFlowMeterType>(const DB& db, const LIST& params, IfcFlowMeterType* in)
  4649. {
  4650. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  4651. // this data structure is not used yet, so there is no code generated to fill its members
  4652. return base;
  4653. }
  4654. // -----------------------------------------------------------------------------------------------------------
  4655. template <> size_t GenericFill<IfcBoxedHalfSpace>(const DB& db, const LIST& params, IfcBoxedHalfSpace* in)
  4656. {
  4657. size_t base = GenericFill(db,params,static_cast<IfcHalfSpaceSolid*>(in));
  4658. // this data structure is not used yet, so there is no code generated to fill its members
  4659. return base;
  4660. }
  4661. // -----------------------------------------------------------------------------------------------------------
  4662. template <> size_t GenericFill<IfcFlowTerminal>(const DB& db, const LIST& params, IfcFlowTerminal* in)
  4663. {
  4664. size_t base = GenericFill(db,params,static_cast<IfcDistributionFlowElement*>(in));
  4665. // this data structure is not used yet, so there is no code generated to fill its members
  4666. return base;
  4667. }
  4668. // -----------------------------------------------------------------------------------------------------------
  4669. template <> size_t GenericFill<IfcStructuralLoadGroup>(const DB& db, const LIST& params, IfcStructuralLoadGroup* in)
  4670. {
  4671. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  4672. // this data structure is not used yet, so there is no code generated to fill its members
  4673. return base;
  4674. }
  4675. // -----------------------------------------------------------------------------------------------------------
  4676. template <> size_t GenericFill<IfcZone>(const DB& db, const LIST& params, IfcZone* in)
  4677. {
  4678. size_t base = GenericFill(db,params,static_cast<IfcGroup*>(in));
  4679. // this data structure is not used yet, so there is no code generated to fill its members
  4680. return base;
  4681. }
  4682. // -----------------------------------------------------------------------------------------------------------
  4683. template <> size_t GenericFill<IfcActionRequest>(const DB& db, const LIST& params, IfcActionRequest* in)
  4684. {
  4685. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  4686. // this data structure is not used yet, so there is no code generated to fill its members
  4687. return base;
  4688. }
  4689. // -----------------------------------------------------------------------------------------------------------
  4690. template <> size_t GenericFill<IfcFooting>(const DB& db, const LIST& params, IfcFooting* in)
  4691. {
  4692. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  4693. // this data structure is not used yet, so there is no code generated to fill its members
  4694. return base;
  4695. }
  4696. // -----------------------------------------------------------------------------------------------------------
  4697. template <> size_t GenericFill<IfcStructuralPointAction>(const DB& db, const LIST& params, IfcStructuralPointAction* in)
  4698. {
  4699. size_t base = GenericFill(db,params,static_cast<IfcStructuralAction*>(in));
  4700. // this data structure is not used yet, so there is no code generated to fill its members
  4701. return base;
  4702. }
  4703. // -----------------------------------------------------------------------------------------------------------
  4704. template <> size_t GenericFill<IfcStructuredDimensionCallout>(const DB& db, const LIST& params, IfcStructuredDimensionCallout* in)
  4705. {
  4706. size_t base = GenericFill(db,params,static_cast<IfcDraughtingCallout*>(in));
  4707. // this data structure is not used yet, so there is no code generated to fill its members
  4708. return base;
  4709. }
  4710. // -----------------------------------------------------------------------------------------------------------
  4711. template <> size_t GenericFill<IfcCompressorType>(const DB& db, const LIST& params, IfcCompressorType* in)
  4712. {
  4713. size_t base = GenericFill(db,params,static_cast<IfcFlowMovingDeviceType*>(in));
  4714. // this data structure is not used yet, so there is no code generated to fill its members
  4715. return base;
  4716. }
  4717. // -----------------------------------------------------------------------------------------------------------
  4718. template <> size_t GenericFill<IfcBooleanClippingResult>(const DB& db, const LIST& params, IfcBooleanClippingResult* in)
  4719. {
  4720. size_t base = GenericFill(db,params,static_cast<IfcBooleanResult*>(in));
  4721. if (params.GetSize() < 3) { throw STEP::TypeError("expected 3 arguments to IfcBooleanClippingResult"); } return base;
  4722. }
  4723. // -----------------------------------------------------------------------------------------------------------
  4724. template <> size_t GenericFill<IfcSurfaceOfLinearExtrusion>(const DB& db, const LIST& params, IfcSurfaceOfLinearExtrusion* in)
  4725. {
  4726. size_t base = GenericFill(db,params,static_cast<IfcSweptSurface*>(in));
  4727. // this data structure is not used yet, so there is no code generated to fill its members
  4728. return base;
  4729. }
  4730. // -----------------------------------------------------------------------------------------------------------
  4731. template <> size_t GenericFill<IfcDamperType>(const DB& db, const LIST& params, IfcDamperType* in)
  4732. {
  4733. size_t base = GenericFill(db,params,static_cast<IfcFlowControllerType*>(in));
  4734. // this data structure is not used yet, so there is no code generated to fill its members
  4735. return base;
  4736. }
  4737. // -----------------------------------------------------------------------------------------------------------
  4738. template <> size_t GenericFill<IfcStructuralPointConnection>(const DB& db, const LIST& params, IfcStructuralPointConnection* in)
  4739. {
  4740. size_t base = GenericFill(db,params,static_cast<IfcStructuralConnection*>(in));
  4741. // this data structure is not used yet, so there is no code generated to fill its members
  4742. return base;
  4743. }
  4744. // -----------------------------------------------------------------------------------------------------------
  4745. template <> size_t GenericFill<IfcTransportElementType>(const DB& db, const LIST& params, IfcTransportElementType* in)
  4746. {
  4747. size_t base = GenericFill(db,params,static_cast<IfcElementType*>(in));
  4748. // this data structure is not used yet, so there is no code generated to fill its members
  4749. return base;
  4750. }
  4751. // -----------------------------------------------------------------------------------------------------------
  4752. template <> size_t GenericFill<IfcPlateType>(const DB& db, const LIST& params, IfcPlateType* in)
  4753. {
  4754. size_t base = GenericFill(db,params,static_cast<IfcBuildingElementType*>(in));
  4755. // this data structure is not used yet, so there is no code generated to fill its members
  4756. return base;
  4757. }
  4758. // -----------------------------------------------------------------------------------------------------------
  4759. template <> size_t GenericFill<IfcServiceLife>(const DB& db, const LIST& params, IfcServiceLife* in)
  4760. {
  4761. size_t base = GenericFill(db,params,static_cast<IfcControl*>(in));
  4762. // this data structure is not used yet, so there is no code generated to fill its members
  4763. return base;
  4764. }
  4765. // -----------------------------------------------------------------------------------------------------------
  4766. template <> size_t GenericFill<IfcCrewResource>(const DB& db, const LIST& params, IfcCrewResource* in)
  4767. {
  4768. size_t base = GenericFill(db,params,static_cast<IfcConstructionResource*>(in));
  4769. // this data structure is not used yet, so there is no code generated to fill its members
  4770. return base;
  4771. }
  4772. // -----------------------------------------------------------------------------------------------------------
  4773. template <> size_t GenericFill<IfcFacetedBrep>(const DB& db, const LIST& params, IfcFacetedBrep* in)
  4774. {
  4775. size_t base = GenericFill(db,params,static_cast<IfcManifoldSolidBrep*>(in));
  4776. // this data structure is not used yet, so there is no code generated to fill its members
  4777. return base;
  4778. }
  4779. // -----------------------------------------------------------------------------------------------------------
  4780. template <> size_t GenericFill<IfcPlane>(const DB& db, const LIST& params, IfcPlane* in)
  4781. {
  4782. size_t base = GenericFill(db,params,static_cast<IfcElementarySurface*>(in));
  4783. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcPlane"); } return base;
  4784. }
  4785. // -----------------------------------------------------------------------------------------------------------
  4786. template <> size_t GenericFill<IfcContextDependentUnit>(const DB& db, const LIST& params, IfcContextDependentUnit* in)
  4787. {
  4788. size_t base = GenericFill(db,params,static_cast<IfcNamedUnit*>(in));
  4789. // this data structure is not used yet, so there is no code generated to fill its members
  4790. return base;
  4791. }
  4792. // -----------------------------------------------------------------------------------------------------------
  4793. template <> size_t GenericFill<IfcRailing>(const DB& db, const LIST& params, IfcRailing* in)
  4794. {
  4795. size_t base = GenericFill(db,params,static_cast<IfcBuildingElement*>(in));
  4796. // this data structure is not used yet, so there is no code generated to fill its members
  4797. return base;
  4798. }
  4799. // -----------------------------------------------------------------------------------------------------------
  4800. template <> size_t GenericFill<IfcRadiusDimension>(const DB& db, const LIST& params, IfcRadiusDimension* in)
  4801. {
  4802. size_t base = GenericFill(db,params,static_cast<IfcDimensionCurveDirectedCallout*>(in));
  4803. // this data structure is not used yet, so there is no code generated to fill its members
  4804. return base;
  4805. }
  4806. // -----------------------------------------------------------------------------------------------------------
  4807. template <> size_t GenericFill<IfcLampType>(const DB& db, const LIST& params, IfcLampType* in)
  4808. {
  4809. size_t base = GenericFill(db,params,static_cast<IfcFlowTerminalType*>(in));
  4810. // this data structure is not used yet, so there is no code generated to fill its members
  4811. return base;
  4812. }
  4813. // -----------------------------------------------------------------------------------------------------------
  4814. template <> size_t GenericFill<IfcSurfaceStyleWithTextures>(const DB& db, const LIST& params, IfcSurfaceStyleWithTextures* in)
  4815. {
  4816. size_t base = 0;
  4817. if (params.GetSize() < 1) { throw STEP::TypeError("expected 1 arguments to IfcSurfaceStyleWithTextures"); } do { // convert the 'Textures' argument
  4818. boost::shared_ptr<const DataType> arg = params[base++];
  4819. try { GenericConvert( in->Textures, arg, db ); break; }
  4820. catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 0 to IfcSurfaceStyleWithTextures to be a `LIST [1:?] OF IfcSurfaceTexture`")); }
  4821. } while(0);
  4822. return base;
  4823. }
  4824. // -----------------------------------------------------------------------------------------------------------
  4825. template <> size_t GenericFill<IfcShapeRepresentation>(const DB& db, const LIST& params, IfcShapeRepresentation* in)
  4826. {
  4827. size_t base = GenericFill(db,params,static_cast<IfcShapeModel*>(in));
  4828. // this data structure is not used yet, so there is no code generated to fill its members
  4829. return base;
  4830. }
  4831. } // ! STEP
  4832. } // ! Assimp
  4833. #endif