bullet.cpp 187 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938
  1. #ifdef EMSCRIPTEN
  2. #include <emscripten.h>
  3. #define HL_PRIM
  4. #define HL_NAME(n) EMSCRIPTEN_KEEPALIVE eb_##n
  5. #define DEFINE_PRIM(ret, name, args)
  6. #define _OPT(t) t*
  7. #define _GET_OPT(value,t) *value
  8. #define alloc_ref(r, _) r
  9. #define alloc_ref_const(r,_) r
  10. #define _ref(t) t
  11. #define _unref(v) v
  12. #define free_ref(v) delete (v)
  13. #define HL_CONST const
  14. #else
  15. #define HL_NAME(x) bullet_##x
  16. #include <hl.h>
  17. #define _IDL _BYTES
  18. #define _OPT(t) vdynamic *
  19. #define _GET_OPT(value,t) (value)->v.t
  20. template <typename T> struct pref {
  21. void *finalize;
  22. T *value;
  23. };
  24. #define _ref(t) pref<t>
  25. #define _unref(v) v->value
  26. #define alloc_ref(r,t) _alloc_ref(r,finalize_##t)
  27. #define alloc_ref_const(r, _) _alloc_const(r)
  28. #define HL_CONST
  29. template<typename T> void free_ref( pref<T> *r ) {
  30. if( !r->finalize ) return;
  31. delete r->value;
  32. r->value = NULL;
  33. r->finalize = NULL;
  34. }
  35. template<typename T> pref<T> *_alloc_ref( T *value, void (*finalize)( pref<T> * ) ) {
  36. pref<T> *r = (pref<T>*)hl_gc_alloc_finalizer(sizeof(r));
  37. r->finalize = finalize;
  38. r->value = value;
  39. return r;
  40. }
  41. template<typename T> pref<T> *_alloc_const( const T *value ) {
  42. pref<T> *r = (pref<T>*)hl_gc_alloc_noptr(sizeof(r));
  43. r->finalize = NULL;
  44. r->value = (T*)value;
  45. return r;
  46. }
  47. #endif
  48. #ifdef _WIN32
  49. #pragma warning(disable:4305)
  50. #pragma warning(disable:4244)
  51. #pragma warning(disable:4316)
  52. #endif
  53. #include <btBulletDynamicsCommon.h>
  54. #include <BulletSoftBody/btSoftBody.h>
  55. #include <BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.h>
  56. #include <BulletSoftBody/btDefaultSoftBodySolver.h>
  57. #include <BulletSoftBody/btSoftBodyHelpers.h>
  58. #include <BulletSoftBody/btSoftRigidDynamicsWorld.h>
  59. #include <BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h>
  60. #include <BulletCollision/CollisionDispatch/btGhostObject.h>
  61. #include <BulletDynamics/Character/btKinematicCharacterController.h>
  62. extern "C" {
  63. static void finalize_btVector3( _ref(btVector3)* _this ) { free_ref(_this); }
  64. HL_PRIM void HL_NAME(btVector3_delete)( _ref(btVector3)* _this ) {
  65. free_ref(_this);
  66. }
  67. DEFINE_PRIM(_VOID, btVector3_delete, _IDL);
  68. static void finalize_btVector4( _ref(btVector4)* _this ) { free_ref(_this); }
  69. HL_PRIM void HL_NAME(btVector4_delete)( _ref(btVector4)* _this ) {
  70. free_ref(_this);
  71. }
  72. DEFINE_PRIM(_VOID, btVector4_delete, _IDL);
  73. static void finalize_btQuadWord( _ref(btQuadWord)* _this ) { free_ref(_this); }
  74. HL_PRIM void HL_NAME(btQuadWord_delete)( _ref(btQuadWord)* _this ) {
  75. free_ref(_this);
  76. }
  77. DEFINE_PRIM(_VOID, btQuadWord_delete, _IDL);
  78. static void finalize_btQuaternion( _ref(btQuaternion)* _this ) { free_ref(_this); }
  79. HL_PRIM void HL_NAME(btQuaternion_delete)( _ref(btQuaternion)* _this ) {
  80. free_ref(_this);
  81. }
  82. DEFINE_PRIM(_VOID, btQuaternion_delete, _IDL);
  83. static void finalize_btMatrix3x3( _ref(btMatrix3x3)* _this ) { free_ref(_this); }
  84. HL_PRIM void HL_NAME(btMatrix3x3_delete)( _ref(btMatrix3x3)* _this ) {
  85. free_ref(_this);
  86. }
  87. DEFINE_PRIM(_VOID, btMatrix3x3_delete, _IDL);
  88. static void finalize_btTransform( _ref(btTransform)* _this ) { free_ref(_this); }
  89. HL_PRIM void HL_NAME(btTransform_delete)( _ref(btTransform)* _this ) {
  90. free_ref(_this);
  91. }
  92. DEFINE_PRIM(_VOID, btTransform_delete, _IDL);
  93. static void finalize_btMotionState( _ref(btMotionState)* _this ) { free_ref(_this); }
  94. HL_PRIM void HL_NAME(btMotionState_delete)( _ref(btMotionState)* _this ) {
  95. free_ref(_this);
  96. }
  97. DEFINE_PRIM(_VOID, btMotionState_delete, _IDL);
  98. static void finalize_btDefaultMotionState( _ref(btDefaultMotionState)* _this ) { free_ref(_this); }
  99. HL_PRIM void HL_NAME(btDefaultMotionState_delete)( _ref(btDefaultMotionState)* _this ) {
  100. free_ref(_this);
  101. }
  102. DEFINE_PRIM(_VOID, btDefaultMotionState_delete, _IDL);
  103. static void finalize_btCollisionObject( _ref(btCollisionObject)* _this ) { free_ref(_this); }
  104. HL_PRIM void HL_NAME(btCollisionObject_delete)( _ref(btCollisionObject)* _this ) {
  105. free_ref(_this);
  106. }
  107. DEFINE_PRIM(_VOID, btCollisionObject_delete, _IDL);
  108. static void finalize_RayResultCallback( _ref(btCollisionWorld::RayResultCallback)* _this ) { free_ref(_this); }
  109. HL_PRIM void HL_NAME(RayResultCallback_delete)( _ref(btCollisionWorld::RayResultCallback)* _this ) {
  110. free_ref(_this);
  111. }
  112. DEFINE_PRIM(_VOID, RayResultCallback_delete, _IDL);
  113. static void finalize_ClosestRayResultCallback( _ref(btCollisionWorld::ClosestRayResultCallback)* _this ) { free_ref(_this); }
  114. HL_PRIM void HL_NAME(ClosestRayResultCallback_delete)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this ) {
  115. free_ref(_this);
  116. }
  117. DEFINE_PRIM(_VOID, ClosestRayResultCallback_delete, _IDL);
  118. static void finalize_btManifoldPoint( _ref(btManifoldPoint)* _this ) { free_ref(_this); }
  119. HL_PRIM void HL_NAME(btManifoldPoint_delete)( _ref(btManifoldPoint)* _this ) {
  120. free_ref(_this);
  121. }
  122. DEFINE_PRIM(_VOID, btManifoldPoint_delete, _IDL);
  123. static void finalize_ContactResultCallback( _ref(btCollisionWorld::ContactResultCallback)* _this ) { free_ref(_this); }
  124. HL_PRIM void HL_NAME(ContactResultCallback_delete)( _ref(btCollisionWorld::ContactResultCallback)* _this ) {
  125. free_ref(_this);
  126. }
  127. DEFINE_PRIM(_VOID, ContactResultCallback_delete, _IDL);
  128. static void finalize_LocalShapeInfo( _ref(btCollisionWorld::LocalShapeInfo)* _this ) { free_ref(_this); }
  129. HL_PRIM void HL_NAME(LocalShapeInfo_delete)( _ref(btCollisionWorld::LocalShapeInfo)* _this ) {
  130. free_ref(_this);
  131. }
  132. DEFINE_PRIM(_VOID, LocalShapeInfo_delete, _IDL);
  133. static void finalize_LocalConvexResult( _ref(btCollisionWorld::LocalConvexResult)* _this ) { free_ref(_this); }
  134. HL_PRIM void HL_NAME(LocalConvexResult_delete)( _ref(btCollisionWorld::LocalConvexResult)* _this ) {
  135. free_ref(_this);
  136. }
  137. DEFINE_PRIM(_VOID, LocalConvexResult_delete, _IDL);
  138. static void finalize_ConvexResultCallback( _ref(btCollisionWorld::ConvexResultCallback)* _this ) { free_ref(_this); }
  139. HL_PRIM void HL_NAME(ConvexResultCallback_delete)( _ref(btCollisionWorld::ConvexResultCallback)* _this ) {
  140. free_ref(_this);
  141. }
  142. DEFINE_PRIM(_VOID, ConvexResultCallback_delete, _IDL);
  143. static void finalize_ClosestConvexResultCallback( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this ) { free_ref(_this); }
  144. HL_PRIM void HL_NAME(ClosestConvexResultCallback_delete)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this ) {
  145. free_ref(_this);
  146. }
  147. DEFINE_PRIM(_VOID, ClosestConvexResultCallback_delete, _IDL);
  148. static void finalize_btCollisionShape( _ref(btCollisionShape)* _this ) { free_ref(_this); }
  149. HL_PRIM void HL_NAME(btCollisionShape_delete)( _ref(btCollisionShape)* _this ) {
  150. free_ref(_this);
  151. }
  152. DEFINE_PRIM(_VOID, btCollisionShape_delete, _IDL);
  153. static void finalize_btConvexShape( _ref(btConvexShape)* _this ) { free_ref(_this); }
  154. HL_PRIM void HL_NAME(btConvexShape_delete)( _ref(btConvexShape)* _this ) {
  155. free_ref(_this);
  156. }
  157. DEFINE_PRIM(_VOID, btConvexShape_delete, _IDL);
  158. static void finalize_btConvexTriangleMeshShape( _ref(btConvexTriangleMeshShape)* _this ) { free_ref(_this); }
  159. HL_PRIM void HL_NAME(btConvexTriangleMeshShape_delete)( _ref(btConvexTriangleMeshShape)* _this ) {
  160. free_ref(_this);
  161. }
  162. DEFINE_PRIM(_VOID, btConvexTriangleMeshShape_delete, _IDL);
  163. static void finalize_btBoxShape( _ref(btBoxShape)* _this ) { free_ref(_this); }
  164. HL_PRIM void HL_NAME(btBoxShape_delete)( _ref(btBoxShape)* _this ) {
  165. free_ref(_this);
  166. }
  167. DEFINE_PRIM(_VOID, btBoxShape_delete, _IDL);
  168. static void finalize_btCapsuleShape( _ref(btCapsuleShape)* _this ) { free_ref(_this); }
  169. HL_PRIM void HL_NAME(btCapsuleShape_delete)( _ref(btCapsuleShape)* _this ) {
  170. free_ref(_this);
  171. }
  172. DEFINE_PRIM(_VOID, btCapsuleShape_delete, _IDL);
  173. static void finalize_btCapsuleShapeX( _ref(btCapsuleShapeX)* _this ) { free_ref(_this); }
  174. HL_PRIM void HL_NAME(btCapsuleShapeX_delete)( _ref(btCapsuleShapeX)* _this ) {
  175. free_ref(_this);
  176. }
  177. DEFINE_PRIM(_VOID, btCapsuleShapeX_delete, _IDL);
  178. static void finalize_btCapsuleShapeZ( _ref(btCapsuleShapeZ)* _this ) { free_ref(_this); }
  179. HL_PRIM void HL_NAME(btCapsuleShapeZ_delete)( _ref(btCapsuleShapeZ)* _this ) {
  180. free_ref(_this);
  181. }
  182. DEFINE_PRIM(_VOID, btCapsuleShapeZ_delete, _IDL);
  183. static void finalize_btCylinderShape( _ref(btCylinderShape)* _this ) { free_ref(_this); }
  184. HL_PRIM void HL_NAME(btCylinderShape_delete)( _ref(btCylinderShape)* _this ) {
  185. free_ref(_this);
  186. }
  187. DEFINE_PRIM(_VOID, btCylinderShape_delete, _IDL);
  188. static void finalize_btCylinderShapeX( _ref(btCylinderShapeX)* _this ) { free_ref(_this); }
  189. HL_PRIM void HL_NAME(btCylinderShapeX_delete)( _ref(btCylinderShapeX)* _this ) {
  190. free_ref(_this);
  191. }
  192. DEFINE_PRIM(_VOID, btCylinderShapeX_delete, _IDL);
  193. static void finalize_btCylinderShapeZ( _ref(btCylinderShapeZ)* _this ) { free_ref(_this); }
  194. HL_PRIM void HL_NAME(btCylinderShapeZ_delete)( _ref(btCylinderShapeZ)* _this ) {
  195. free_ref(_this);
  196. }
  197. DEFINE_PRIM(_VOID, btCylinderShapeZ_delete, _IDL);
  198. static void finalize_btSphereShape( _ref(btSphereShape)* _this ) { free_ref(_this); }
  199. HL_PRIM void HL_NAME(btSphereShape_delete)( _ref(btSphereShape)* _this ) {
  200. free_ref(_this);
  201. }
  202. DEFINE_PRIM(_VOID, btSphereShape_delete, _IDL);
  203. static void finalize_btConeShape( _ref(btConeShape)* _this ) { free_ref(_this); }
  204. HL_PRIM void HL_NAME(btConeShape_delete)( _ref(btConeShape)* _this ) {
  205. free_ref(_this);
  206. }
  207. DEFINE_PRIM(_VOID, btConeShape_delete, _IDL);
  208. static void finalize_btConvexHullShape( _ref(btConvexHullShape)* _this ) { free_ref(_this); }
  209. HL_PRIM void HL_NAME(btConvexHullShape_delete)( _ref(btConvexHullShape)* _this ) {
  210. free_ref(_this);
  211. }
  212. DEFINE_PRIM(_VOID, btConvexHullShape_delete, _IDL);
  213. static void finalize_btConeShapeX( _ref(btConeShapeX)* _this ) { free_ref(_this); }
  214. HL_PRIM void HL_NAME(btConeShapeX_delete)( _ref(btConeShapeX)* _this ) {
  215. free_ref(_this);
  216. }
  217. DEFINE_PRIM(_VOID, btConeShapeX_delete, _IDL);
  218. static void finalize_btConeShapeZ( _ref(btConeShapeZ)* _this ) { free_ref(_this); }
  219. HL_PRIM void HL_NAME(btConeShapeZ_delete)( _ref(btConeShapeZ)* _this ) {
  220. free_ref(_this);
  221. }
  222. DEFINE_PRIM(_VOID, btConeShapeZ_delete, _IDL);
  223. static void finalize_btCompoundShape( _ref(btCompoundShape)* _this ) { free_ref(_this); }
  224. HL_PRIM void HL_NAME(btCompoundShape_delete)( _ref(btCompoundShape)* _this ) {
  225. free_ref(_this);
  226. }
  227. DEFINE_PRIM(_VOID, btCompoundShape_delete, _IDL);
  228. static void finalize_btStridingMeshInterface( _ref(btStridingMeshInterface)* _this ) { free_ref(_this); }
  229. HL_PRIM void HL_NAME(btStridingMeshInterface_delete)( _ref(btStridingMeshInterface)* _this ) {
  230. free_ref(_this);
  231. }
  232. DEFINE_PRIM(_VOID, btStridingMeshInterface_delete, _IDL);
  233. static void finalize_btTriangleMesh( _ref(btTriangleMesh)* _this ) { free_ref(_this); }
  234. HL_PRIM void HL_NAME(btTriangleMesh_delete)( _ref(btTriangleMesh)* _this ) {
  235. free_ref(_this);
  236. }
  237. DEFINE_PRIM(_VOID, btTriangleMesh_delete, _IDL);
  238. static PHY_ScalarType PHY_ScalarType__values[] = { PHY_FLOAT,PHY_DOUBLE,PHY_INTEGER,PHY_SHORT,PHY_FIXEDPOINT88,PHY_UCHAR };
  239. static void finalize_btConcaveShape( _ref(btConcaveShape)* _this ) { free_ref(_this); }
  240. HL_PRIM void HL_NAME(btConcaveShape_delete)( _ref(btConcaveShape)* _this ) {
  241. free_ref(_this);
  242. }
  243. DEFINE_PRIM(_VOID, btConcaveShape_delete, _IDL);
  244. static void finalize_btStaticPlaneShape( _ref(btStaticPlaneShape)* _this ) { free_ref(_this); }
  245. HL_PRIM void HL_NAME(btStaticPlaneShape_delete)( _ref(btStaticPlaneShape)* _this ) {
  246. free_ref(_this);
  247. }
  248. DEFINE_PRIM(_VOID, btStaticPlaneShape_delete, _IDL);
  249. static void finalize_btTriangleMeshShape( _ref(btTriangleMeshShape)* _this ) { free_ref(_this); }
  250. HL_PRIM void HL_NAME(btTriangleMeshShape_delete)( _ref(btTriangleMeshShape)* _this ) {
  251. free_ref(_this);
  252. }
  253. DEFINE_PRIM(_VOID, btTriangleMeshShape_delete, _IDL);
  254. static void finalize_btBvhTriangleMeshShape( _ref(btBvhTriangleMeshShape)* _this ) { free_ref(_this); }
  255. HL_PRIM void HL_NAME(btBvhTriangleMeshShape_delete)( _ref(btBvhTriangleMeshShape)* _this ) {
  256. free_ref(_this);
  257. }
  258. DEFINE_PRIM(_VOID, btBvhTriangleMeshShape_delete, _IDL);
  259. static void finalize_btHeightfieldTerrainShape( _ref(btHeightfieldTerrainShape)* _this ) { free_ref(_this); }
  260. HL_PRIM void HL_NAME(btHeightfieldTerrainShape_delete)( _ref(btHeightfieldTerrainShape)* _this ) {
  261. free_ref(_this);
  262. }
  263. DEFINE_PRIM(_VOID, btHeightfieldTerrainShape_delete, _IDL);
  264. static void finalize_btDefaultCollisionConstructionInfo( _ref(btDefaultCollisionConstructionInfo)* _this ) { free_ref(_this); }
  265. HL_PRIM void HL_NAME(btDefaultCollisionConstructionInfo_delete)( _ref(btDefaultCollisionConstructionInfo)* _this ) {
  266. free_ref(_this);
  267. }
  268. DEFINE_PRIM(_VOID, btDefaultCollisionConstructionInfo_delete, _IDL);
  269. static void finalize_btDefaultCollisionConfiguration( _ref(btDefaultCollisionConfiguration)* _this ) { free_ref(_this); }
  270. HL_PRIM void HL_NAME(btDefaultCollisionConfiguration_delete)( _ref(btDefaultCollisionConfiguration)* _this ) {
  271. free_ref(_this);
  272. }
  273. DEFINE_PRIM(_VOID, btDefaultCollisionConfiguration_delete, _IDL);
  274. static void finalize_btPersistentManifold( _ref(btPersistentManifold)* _this ) { free_ref(_this); }
  275. HL_PRIM void HL_NAME(btPersistentManifold_delete)( _ref(btPersistentManifold)* _this ) {
  276. free_ref(_this);
  277. }
  278. DEFINE_PRIM(_VOID, btPersistentManifold_delete, _IDL);
  279. static void finalize_btDispatcher( _ref(btDispatcher)* _this ) { free_ref(_this); }
  280. HL_PRIM void HL_NAME(btDispatcher_delete)( _ref(btDispatcher)* _this ) {
  281. free_ref(_this);
  282. }
  283. DEFINE_PRIM(_VOID, btDispatcher_delete, _IDL);
  284. static void finalize_btCollisionDispatcher( _ref(btCollisionDispatcher)* _this ) { free_ref(_this); }
  285. HL_PRIM void HL_NAME(btCollisionDispatcher_delete)( _ref(btCollisionDispatcher)* _this ) {
  286. free_ref(_this);
  287. }
  288. DEFINE_PRIM(_VOID, btCollisionDispatcher_delete, _IDL);
  289. static void finalize_btOverlappingPairCallback( _ref(btOverlappingPairCallback)* _this ) { free_ref(_this); }
  290. HL_PRIM void HL_NAME(btOverlappingPairCallback_delete)( _ref(btOverlappingPairCallback)* _this ) {
  291. free_ref(_this);
  292. }
  293. DEFINE_PRIM(_VOID, btOverlappingPairCallback_delete, _IDL);
  294. static void finalize_btOverlappingPairCache( _ref(btOverlappingPairCache)* _this ) { free_ref(_this); }
  295. HL_PRIM void HL_NAME(btOverlappingPairCache_delete)( _ref(btOverlappingPairCache)* _this ) {
  296. free_ref(_this);
  297. }
  298. DEFINE_PRIM(_VOID, btOverlappingPairCache_delete, _IDL);
  299. static void finalize_btAxisSweep3( _ref(btAxisSweep3)* _this ) { free_ref(_this); }
  300. HL_PRIM void HL_NAME(btAxisSweep3_delete)( _ref(btAxisSweep3)* _this ) {
  301. free_ref(_this);
  302. }
  303. DEFINE_PRIM(_VOID, btAxisSweep3_delete, _IDL);
  304. static void finalize_btBroadphaseInterface( _ref(btBroadphaseInterface)* _this ) { free_ref(_this); }
  305. HL_PRIM void HL_NAME(btBroadphaseInterface_delete)( _ref(btBroadphaseInterface)* _this ) {
  306. free_ref(_this);
  307. }
  308. DEFINE_PRIM(_VOID, btBroadphaseInterface_delete, _IDL);
  309. static void finalize_btCollisionConfiguration( _ref(btCollisionConfiguration)* _this ) { free_ref(_this); }
  310. HL_PRIM void HL_NAME(btCollisionConfiguration_delete)( _ref(btCollisionConfiguration)* _this ) {
  311. free_ref(_this);
  312. }
  313. DEFINE_PRIM(_VOID, btCollisionConfiguration_delete, _IDL);
  314. static void finalize_btDbvtBroadphase( _ref(btDbvtBroadphase)* _this ) { free_ref(_this); }
  315. HL_PRIM void HL_NAME(btDbvtBroadphase_delete)( _ref(btDbvtBroadphase)* _this ) {
  316. free_ref(_this);
  317. }
  318. DEFINE_PRIM(_VOID, btDbvtBroadphase_delete, _IDL);
  319. static void finalize_btRigidBodyConstructionInfo( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) { free_ref(_this); }
  320. HL_PRIM void HL_NAME(btRigidBodyConstructionInfo_delete)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  321. free_ref(_this);
  322. }
  323. DEFINE_PRIM(_VOID, btRigidBodyConstructionInfo_delete, _IDL);
  324. static void finalize_btRigidBody( _ref(btRigidBody)* _this ) { free_ref(_this); }
  325. HL_PRIM void HL_NAME(btRigidBody_delete)( _ref(btRigidBody)* _this ) {
  326. free_ref(_this);
  327. }
  328. DEFINE_PRIM(_VOID, btRigidBody_delete, _IDL);
  329. static void finalize_btConstraintSetting( _ref(btConstraintSetting)* _this ) { free_ref(_this); }
  330. HL_PRIM void HL_NAME(btConstraintSetting_delete)( _ref(btConstraintSetting)* _this ) {
  331. free_ref(_this);
  332. }
  333. DEFINE_PRIM(_VOID, btConstraintSetting_delete, _IDL);
  334. static void finalize_btTypedConstraint( _ref(btTypedConstraint)* _this ) { free_ref(_this); }
  335. HL_PRIM void HL_NAME(btTypedConstraint_delete)( _ref(btTypedConstraint)* _this ) {
  336. free_ref(_this);
  337. }
  338. DEFINE_PRIM(_VOID, btTypedConstraint_delete, _IDL);
  339. static btConstraintParams btConstraintParams__values[] = { BT_CONSTRAINT_ERP,BT_CONSTRAINT_STOP_ERP,BT_CONSTRAINT_CFM,BT_CONSTRAINT_STOP_CFM };
  340. static void finalize_btPoint2PointConstraint( _ref(btPoint2PointConstraint)* _this ) { free_ref(_this); }
  341. HL_PRIM void HL_NAME(btPoint2PointConstraint_delete)( _ref(btPoint2PointConstraint)* _this ) {
  342. free_ref(_this);
  343. }
  344. DEFINE_PRIM(_VOID, btPoint2PointConstraint_delete, _IDL);
  345. static void finalize_btGeneric6DofConstraint( _ref(btGeneric6DofConstraint)* _this ) { free_ref(_this); }
  346. HL_PRIM void HL_NAME(btGeneric6DofConstraint_delete)( _ref(btGeneric6DofConstraint)* _this ) {
  347. free_ref(_this);
  348. }
  349. DEFINE_PRIM(_VOID, btGeneric6DofConstraint_delete, _IDL);
  350. static void finalize_btGeneric6DofSpringConstraint( _ref(btGeneric6DofSpringConstraint)* _this ) { free_ref(_this); }
  351. HL_PRIM void HL_NAME(btGeneric6DofSpringConstraint_delete)( _ref(btGeneric6DofSpringConstraint)* _this ) {
  352. free_ref(_this);
  353. }
  354. DEFINE_PRIM(_VOID, btGeneric6DofSpringConstraint_delete, _IDL);
  355. static void finalize_btSequentialImpulseConstraintSolver( _ref(btSequentialImpulseConstraintSolver)* _this ) { free_ref(_this); }
  356. HL_PRIM void HL_NAME(btSequentialImpulseConstraintSolver_delete)( _ref(btSequentialImpulseConstraintSolver)* _this ) {
  357. free_ref(_this);
  358. }
  359. DEFINE_PRIM(_VOID, btSequentialImpulseConstraintSolver_delete, _IDL);
  360. static void finalize_btConeTwistConstraint( _ref(btConeTwistConstraint)* _this ) { free_ref(_this); }
  361. HL_PRIM void HL_NAME(btConeTwistConstraint_delete)( _ref(btConeTwistConstraint)* _this ) {
  362. free_ref(_this);
  363. }
  364. DEFINE_PRIM(_VOID, btConeTwistConstraint_delete, _IDL);
  365. static void finalize_btHingeConstraint( _ref(btHingeConstraint)* _this ) { free_ref(_this); }
  366. HL_PRIM void HL_NAME(btHingeConstraint_delete)( _ref(btHingeConstraint)* _this ) {
  367. free_ref(_this);
  368. }
  369. DEFINE_PRIM(_VOID, btHingeConstraint_delete, _IDL);
  370. static void finalize_btSliderConstraint( _ref(btSliderConstraint)* _this ) { free_ref(_this); }
  371. HL_PRIM void HL_NAME(btSliderConstraint_delete)( _ref(btSliderConstraint)* _this ) {
  372. free_ref(_this);
  373. }
  374. DEFINE_PRIM(_VOID, btSliderConstraint_delete, _IDL);
  375. static void finalize_btFixedConstraint( _ref(btFixedConstraint)* _this ) { free_ref(_this); }
  376. HL_PRIM void HL_NAME(btFixedConstraint_delete)( _ref(btFixedConstraint)* _this ) {
  377. free_ref(_this);
  378. }
  379. DEFINE_PRIM(_VOID, btFixedConstraint_delete, _IDL);
  380. static void finalize_btConstraintSolver( _ref(btConstraintSolver)* _this ) { free_ref(_this); }
  381. HL_PRIM void HL_NAME(btConstraintSolver_delete)( _ref(btConstraintSolver)* _this ) {
  382. free_ref(_this);
  383. }
  384. DEFINE_PRIM(_VOID, btConstraintSolver_delete, _IDL);
  385. static void finalize_btDispatcherInfo( _ref(btDispatcherInfo)* _this ) { free_ref(_this); }
  386. HL_PRIM void HL_NAME(btDispatcherInfo_delete)( _ref(btDispatcherInfo)* _this ) {
  387. free_ref(_this);
  388. }
  389. DEFINE_PRIM(_VOID, btDispatcherInfo_delete, _IDL);
  390. static void finalize_btCollisionWorld( _ref(btCollisionWorld)* _this ) { free_ref(_this); }
  391. HL_PRIM void HL_NAME(btCollisionWorld_delete)( _ref(btCollisionWorld)* _this ) {
  392. free_ref(_this);
  393. }
  394. DEFINE_PRIM(_VOID, btCollisionWorld_delete, _IDL);
  395. static void finalize_btContactSolverInfo( _ref(btContactSolverInfo)* _this ) { free_ref(_this); }
  396. HL_PRIM void HL_NAME(btContactSolverInfo_delete)( _ref(btContactSolverInfo)* _this ) {
  397. free_ref(_this);
  398. }
  399. DEFINE_PRIM(_VOID, btContactSolverInfo_delete, _IDL);
  400. static void finalize_btDynamicsWorld( _ref(btDynamicsWorld)* _this ) { free_ref(_this); }
  401. HL_PRIM void HL_NAME(btDynamicsWorld_delete)( _ref(btDynamicsWorld)* _this ) {
  402. free_ref(_this);
  403. }
  404. DEFINE_PRIM(_VOID, btDynamicsWorld_delete, _IDL);
  405. static void finalize_btDiscreteDynamicsWorld( _ref(btDiscreteDynamicsWorld)* _this ) { free_ref(_this); }
  406. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_delete)( _ref(btDiscreteDynamicsWorld)* _this ) {
  407. free_ref(_this);
  408. }
  409. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_delete, _IDL);
  410. static void finalize_btVehicleTuning( _ref(btRaycastVehicle::btVehicleTuning)* _this ) { free_ref(_this); }
  411. HL_PRIM void HL_NAME(btVehicleTuning_delete)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  412. free_ref(_this);
  413. }
  414. DEFINE_PRIM(_VOID, btVehicleTuning_delete, _IDL);
  415. static void finalize_btVehicleRaycasterResult( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this ) { free_ref(_this); }
  416. HL_PRIM void HL_NAME(btVehicleRaycasterResult_delete)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this ) {
  417. free_ref(_this);
  418. }
  419. DEFINE_PRIM(_VOID, btVehicleRaycasterResult_delete, _IDL);
  420. static void finalize_btVehicleRaycaster( _ref(btVehicleRaycaster)* _this ) { free_ref(_this); }
  421. HL_PRIM void HL_NAME(btVehicleRaycaster_delete)( _ref(btVehicleRaycaster)* _this ) {
  422. free_ref(_this);
  423. }
  424. DEFINE_PRIM(_VOID, btVehicleRaycaster_delete, _IDL);
  425. static void finalize_btDefaultVehicleRaycaster( _ref(btDefaultVehicleRaycaster)* _this ) { free_ref(_this); }
  426. HL_PRIM void HL_NAME(btDefaultVehicleRaycaster_delete)( _ref(btDefaultVehicleRaycaster)* _this ) {
  427. free_ref(_this);
  428. }
  429. DEFINE_PRIM(_VOID, btDefaultVehicleRaycaster_delete, _IDL);
  430. static void finalize_RaycastInfo( _ref(btWheelInfo::RaycastInfo)* _this ) { free_ref(_this); }
  431. HL_PRIM void HL_NAME(RaycastInfo_delete)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  432. free_ref(_this);
  433. }
  434. DEFINE_PRIM(_VOID, RaycastInfo_delete, _IDL);
  435. static void finalize_btWheelInfoConstructionInfo( _ref(btWheelInfoConstructionInfo)* _this ) { free_ref(_this); }
  436. HL_PRIM void HL_NAME(btWheelInfoConstructionInfo_delete)( _ref(btWheelInfoConstructionInfo)* _this ) {
  437. free_ref(_this);
  438. }
  439. DEFINE_PRIM(_VOID, btWheelInfoConstructionInfo_delete, _IDL);
  440. static void finalize_btWheelInfo( _ref(btWheelInfo)* _this ) { free_ref(_this); }
  441. HL_PRIM void HL_NAME(btWheelInfo_delete)( _ref(btWheelInfo)* _this ) {
  442. free_ref(_this);
  443. }
  444. DEFINE_PRIM(_VOID, btWheelInfo_delete, _IDL);
  445. static void finalize_btActionInterface( _ref(btActionInterface)* _this ) { free_ref(_this); }
  446. HL_PRIM void HL_NAME(btActionInterface_delete)( _ref(btActionInterface)* _this ) {
  447. free_ref(_this);
  448. }
  449. DEFINE_PRIM(_VOID, btActionInterface_delete, _IDL);
  450. static void finalize_btKinematicCharacterController( _ref(btKinematicCharacterController)* _this ) { free_ref(_this); }
  451. HL_PRIM void HL_NAME(btKinematicCharacterController_delete)( _ref(btKinematicCharacterController)* _this ) {
  452. free_ref(_this);
  453. }
  454. DEFINE_PRIM(_VOID, btKinematicCharacterController_delete, _IDL);
  455. static void finalize_btRaycastVehicle( _ref(btRaycastVehicle)* _this ) { free_ref(_this); }
  456. HL_PRIM void HL_NAME(btRaycastVehicle_delete)( _ref(btRaycastVehicle)* _this ) {
  457. free_ref(_this);
  458. }
  459. DEFINE_PRIM(_VOID, btRaycastVehicle_delete, _IDL);
  460. static void finalize_btGhostObject( _ref(btGhostObject)* _this ) { free_ref(_this); }
  461. HL_PRIM void HL_NAME(btGhostObject_delete)( _ref(btGhostObject)* _this ) {
  462. free_ref(_this);
  463. }
  464. DEFINE_PRIM(_VOID, btGhostObject_delete, _IDL);
  465. static void finalize_btPairCachingGhostObject( _ref(btPairCachingGhostObject)* _this ) { free_ref(_this); }
  466. HL_PRIM void HL_NAME(btPairCachingGhostObject_delete)( _ref(btPairCachingGhostObject)* _this ) {
  467. free_ref(_this);
  468. }
  469. DEFINE_PRIM(_VOID, btPairCachingGhostObject_delete, _IDL);
  470. static void finalize_btGhostPairCallback( _ref(btGhostPairCallback)* _this ) { free_ref(_this); }
  471. HL_PRIM void HL_NAME(btGhostPairCallback_delete)( _ref(btGhostPairCallback)* _this ) {
  472. free_ref(_this);
  473. }
  474. DEFINE_PRIM(_VOID, btGhostPairCallback_delete, _IDL);
  475. static void finalize_btSoftBodyWorldInfo( _ref(btSoftBodyWorldInfo)* _this ) { free_ref(_this); }
  476. HL_PRIM void HL_NAME(btSoftBodyWorldInfo_delete)( _ref(btSoftBodyWorldInfo)* _this ) {
  477. free_ref(_this);
  478. }
  479. DEFINE_PRIM(_VOID, btSoftBodyWorldInfo_delete, _IDL);
  480. static void finalize_Node( _ref(btSoftBody::Node)* _this ) { free_ref(_this); }
  481. HL_PRIM void HL_NAME(Node_delete)( _ref(btSoftBody::Node)* _this ) {
  482. free_ref(_this);
  483. }
  484. DEFINE_PRIM(_VOID, Node_delete, _IDL);
  485. static void finalize_tNodeArray( _ref(btSoftBody::tNodeArray)* _this ) { free_ref(_this); }
  486. HL_PRIM void HL_NAME(tNodeArray_delete)( _ref(btSoftBody::tNodeArray)* _this ) {
  487. free_ref(_this);
  488. }
  489. DEFINE_PRIM(_VOID, tNodeArray_delete, _IDL);
  490. static void finalize_Material( _ref(btSoftBody::Material)* _this ) { free_ref(_this); }
  491. HL_PRIM void HL_NAME(Material_delete)( _ref(btSoftBody::Material)* _this ) {
  492. free_ref(_this);
  493. }
  494. DEFINE_PRIM(_VOID, Material_delete, _IDL);
  495. static void finalize_tMaterialArray( _ref(btSoftBody::tMaterialArray)* _this ) { free_ref(_this); }
  496. HL_PRIM void HL_NAME(tMaterialArray_delete)( _ref(btSoftBody::tMaterialArray)* _this ) {
  497. free_ref(_this);
  498. }
  499. DEFINE_PRIM(_VOID, tMaterialArray_delete, _IDL);
  500. static void finalize_Config( _ref(btSoftBody::Config)* _this ) { free_ref(_this); }
  501. HL_PRIM void HL_NAME(Config_delete)( _ref(btSoftBody::Config)* _this ) {
  502. free_ref(_this);
  503. }
  504. DEFINE_PRIM(_VOID, Config_delete, _IDL);
  505. static void finalize_btSoftBody( _ref(btSoftBody)* _this ) { free_ref(_this); }
  506. HL_PRIM void HL_NAME(btSoftBody_delete)( _ref(btSoftBody)* _this ) {
  507. free_ref(_this);
  508. }
  509. DEFINE_PRIM(_VOID, btSoftBody_delete, _IDL);
  510. static void finalize_btSoftBodyRigidBodyCollisionConfiguration( _ref(btSoftBodyRigidBodyCollisionConfiguration)* _this ) { free_ref(_this); }
  511. HL_PRIM void HL_NAME(btSoftBodyRigidBodyCollisionConfiguration_delete)( _ref(btSoftBodyRigidBodyCollisionConfiguration)* _this ) {
  512. free_ref(_this);
  513. }
  514. DEFINE_PRIM(_VOID, btSoftBodyRigidBodyCollisionConfiguration_delete, _IDL);
  515. static void finalize_btSoftBodySolver( _ref(btSoftBodySolver)* _this ) { free_ref(_this); }
  516. HL_PRIM void HL_NAME(btSoftBodySolver_delete)( _ref(btSoftBodySolver)* _this ) {
  517. free_ref(_this);
  518. }
  519. DEFINE_PRIM(_VOID, btSoftBodySolver_delete, _IDL);
  520. static void finalize_btDefaultSoftBodySolver( _ref(btDefaultSoftBodySolver)* _this ) { free_ref(_this); }
  521. HL_PRIM void HL_NAME(btDefaultSoftBodySolver_delete)( _ref(btDefaultSoftBodySolver)* _this ) {
  522. free_ref(_this);
  523. }
  524. DEFINE_PRIM(_VOID, btDefaultSoftBodySolver_delete, _IDL);
  525. static void finalize_btSoftBodyArray( _ref(btSoftBodyArray)* _this ) { free_ref(_this); }
  526. HL_PRIM void HL_NAME(btSoftBodyArray_delete)( _ref(btSoftBodyArray)* _this ) {
  527. free_ref(_this);
  528. }
  529. DEFINE_PRIM(_VOID, btSoftBodyArray_delete, _IDL);
  530. static void finalize_btSoftRigidDynamicsWorld( _ref(btSoftRigidDynamicsWorld)* _this ) { free_ref(_this); }
  531. HL_PRIM void HL_NAME(btSoftRigidDynamicsWorld_delete)( _ref(btSoftRigidDynamicsWorld)* _this ) {
  532. free_ref(_this);
  533. }
  534. DEFINE_PRIM(_VOID, btSoftRigidDynamicsWorld_delete, _IDL);
  535. static void finalize_btSoftBodyHelpers( _ref(btSoftBodyHelpers)* _this ) { free_ref(_this); }
  536. HL_PRIM void HL_NAME(btSoftBodyHelpers_delete)( _ref(btSoftBodyHelpers)* _this ) {
  537. free_ref(_this);
  538. }
  539. DEFINE_PRIM(_VOID, btSoftBodyHelpers_delete, _IDL);
  540. HL_PRIM _ref(btVector3)* HL_NAME(btVector3_new0)() {
  541. return alloc_ref((new btVector3()),btVector3);
  542. }
  543. DEFINE_PRIM(_IDL, btVector3_new0,);
  544. HL_PRIM _ref(btVector3)* HL_NAME(btVector3_new3)(float x, float y, float z) {
  545. return alloc_ref((new btVector3(x, y, z)),btVector3);
  546. }
  547. DEFINE_PRIM(_IDL, btVector3_new3, _F32 _F32 _F32);
  548. HL_PRIM float HL_NAME(btVector3_length0)(_ref(btVector3)* _this) {
  549. return _unref(_this)->length();
  550. }
  551. DEFINE_PRIM(_F32, btVector3_length0, _IDL);
  552. HL_PRIM float HL_NAME(btVector3_x0)(_ref(btVector3)* _this) {
  553. return _unref(_this)->x();
  554. }
  555. DEFINE_PRIM(_F32, btVector3_x0, _IDL);
  556. HL_PRIM float HL_NAME(btVector3_y0)(_ref(btVector3)* _this) {
  557. return _unref(_this)->y();
  558. }
  559. DEFINE_PRIM(_F32, btVector3_y0, _IDL);
  560. HL_PRIM float HL_NAME(btVector3_z0)(_ref(btVector3)* _this) {
  561. return _unref(_this)->z();
  562. }
  563. DEFINE_PRIM(_F32, btVector3_z0, _IDL);
  564. HL_PRIM void HL_NAME(btVector3_setX1)(_ref(btVector3)* _this, float x) {
  565. _unref(_this)->setX(x);
  566. }
  567. DEFINE_PRIM(_VOID, btVector3_setX1, _IDL _F32);
  568. HL_PRIM void HL_NAME(btVector3_setY1)(_ref(btVector3)* _this, float y) {
  569. _unref(_this)->setY(y);
  570. }
  571. DEFINE_PRIM(_VOID, btVector3_setY1, _IDL _F32);
  572. HL_PRIM void HL_NAME(btVector3_setZ1)(_ref(btVector3)* _this, float z) {
  573. _unref(_this)->setZ(z);
  574. }
  575. DEFINE_PRIM(_VOID, btVector3_setZ1, _IDL _F32);
  576. HL_PRIM void HL_NAME(btVector3_setValue3)(_ref(btVector3)* _this, float x, float y, float z) {
  577. _unref(_this)->setValue(x, y, z);
  578. }
  579. DEFINE_PRIM(_VOID, btVector3_setValue3, _IDL _F32 _F32 _F32);
  580. HL_PRIM void HL_NAME(btVector3_normalize0)(_ref(btVector3)* _this) {
  581. _unref(_this)->normalize();
  582. }
  583. DEFINE_PRIM(_VOID, btVector3_normalize0, _IDL);
  584. HL_PRIM _ref(btVector3)* HL_NAME(btVector3_rotate2)(_ref(btVector3)* _this, _ref(btVector3)* wAxis, float angle) {
  585. return alloc_ref(new btVector3(_unref(_this)->rotate(*_unref(wAxis), angle)),btVector3);
  586. }
  587. DEFINE_PRIM(_IDL, btVector3_rotate2, _IDL _IDL _F32);
  588. HL_PRIM float HL_NAME(btVector3_dot1)(_ref(btVector3)* _this, _ref(btVector3)* v) {
  589. return _unref(_this)->dot(*_unref(v));
  590. }
  591. DEFINE_PRIM(_F32, btVector3_dot1, _IDL _IDL);
  592. HL_PRIM _ref(btVector3)* HL_NAME(btVector3_op_mul1)(_ref(btVector3)* _this, float x) {
  593. return alloc_ref(new btVector3(*_unref(_this) * (x)),btVector3);
  594. }
  595. DEFINE_PRIM(_IDL, btVector3_op_mul1, _IDL _F32);
  596. HL_PRIM _ref(btVector3)* HL_NAME(btVector3_op_add1)(_ref(btVector3)* _this, _ref(btVector3)* v) {
  597. return alloc_ref(new btVector3(*_unref(_this) + (*_unref(v))),btVector3);
  598. }
  599. DEFINE_PRIM(_IDL, btVector3_op_add1, _IDL _IDL);
  600. HL_PRIM _ref(btVector3)* HL_NAME(btVector3_op_sub1)(_ref(btVector3)* _this, _ref(btVector3)* v) {
  601. return alloc_ref(new btVector3(*_unref(_this) - (*_unref(v))),btVector3);
  602. }
  603. DEFINE_PRIM(_IDL, btVector3_op_sub1, _IDL _IDL);
  604. HL_PRIM _ref(btVector4)* HL_NAME(btVector4_new0)() {
  605. return alloc_ref((new btVector4()),btVector4);
  606. }
  607. DEFINE_PRIM(_IDL, btVector4_new0,);
  608. HL_PRIM _ref(btVector4)* HL_NAME(btVector4_new4)(float x, float y, float z, float w) {
  609. return alloc_ref((new btVector4(x, y, z, w)),btVector4);
  610. }
  611. DEFINE_PRIM(_IDL, btVector4_new4, _F32 _F32 _F32 _F32);
  612. HL_PRIM float HL_NAME(btVector4_w0)(_ref(btVector4)* _this) {
  613. return _unref(_this)->w();
  614. }
  615. DEFINE_PRIM(_F32, btVector4_w0, _IDL);
  616. HL_PRIM void HL_NAME(btVector4_setValue4)(_ref(btVector4)* _this, float x, float y, float z, float w) {
  617. _unref(_this)->setValue(x, y, z, w);
  618. }
  619. DEFINE_PRIM(_VOID, btVector4_setValue4, _IDL _F32 _F32 _F32 _F32);
  620. HL_PRIM float HL_NAME(btQuadWord_x0)(_ref(btQuadWord)* _this) {
  621. return _unref(_this)->x();
  622. }
  623. DEFINE_PRIM(_F32, btQuadWord_x0, _IDL);
  624. HL_PRIM float HL_NAME(btQuadWord_y0)(_ref(btQuadWord)* _this) {
  625. return _unref(_this)->y();
  626. }
  627. DEFINE_PRIM(_F32, btQuadWord_y0, _IDL);
  628. HL_PRIM float HL_NAME(btQuadWord_z0)(_ref(btQuadWord)* _this) {
  629. return _unref(_this)->z();
  630. }
  631. DEFINE_PRIM(_F32, btQuadWord_z0, _IDL);
  632. HL_PRIM float HL_NAME(btQuadWord_w0)(_ref(btQuadWord)* _this) {
  633. return _unref(_this)->w();
  634. }
  635. DEFINE_PRIM(_F32, btQuadWord_w0, _IDL);
  636. HL_PRIM void HL_NAME(btQuadWord_setX1)(_ref(btQuadWord)* _this, float x) {
  637. _unref(_this)->setX(x);
  638. }
  639. DEFINE_PRIM(_VOID, btQuadWord_setX1, _IDL _F32);
  640. HL_PRIM void HL_NAME(btQuadWord_setY1)(_ref(btQuadWord)* _this, float y) {
  641. _unref(_this)->setY(y);
  642. }
  643. DEFINE_PRIM(_VOID, btQuadWord_setY1, _IDL _F32);
  644. HL_PRIM void HL_NAME(btQuadWord_setZ1)(_ref(btQuadWord)* _this, float z) {
  645. _unref(_this)->setZ(z);
  646. }
  647. DEFINE_PRIM(_VOID, btQuadWord_setZ1, _IDL _F32);
  648. HL_PRIM void HL_NAME(btQuadWord_setW1)(_ref(btQuadWord)* _this, float w) {
  649. _unref(_this)->setW(w);
  650. }
  651. DEFINE_PRIM(_VOID, btQuadWord_setW1, _IDL _F32);
  652. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_new4)(float x, float y, float z, float w) {
  653. return alloc_ref((new btQuaternion(x, y, z, w)),btQuaternion);
  654. }
  655. DEFINE_PRIM(_IDL, btQuaternion_new4, _F32 _F32 _F32 _F32);
  656. HL_PRIM void HL_NAME(btQuaternion_setValue4)(_ref(btQuaternion)* _this, float x, float y, float z, float w) {
  657. _unref(_this)->setValue(x, y, z, w);
  658. }
  659. DEFINE_PRIM(_VOID, btQuaternion_setValue4, _IDL _F32 _F32 _F32 _F32);
  660. HL_PRIM void HL_NAME(btQuaternion_setEulerZYX3)(_ref(btQuaternion)* _this, float z, float y, float x) {
  661. _unref(_this)->setEulerZYX(z, y, x);
  662. }
  663. DEFINE_PRIM(_VOID, btQuaternion_setEulerZYX3, _IDL _F32 _F32 _F32);
  664. HL_PRIM void HL_NAME(btQuaternion_setRotation2)(_ref(btQuaternion)* _this, _ref(btVector3)* axis, float angle) {
  665. _unref(_this)->setRotation(*_unref(axis), angle);
  666. }
  667. DEFINE_PRIM(_VOID, btQuaternion_setRotation2, _IDL _IDL _F32);
  668. HL_PRIM void HL_NAME(btQuaternion_normalize0)(_ref(btQuaternion)* _this) {
  669. _unref(_this)->normalize();
  670. }
  671. DEFINE_PRIM(_VOID, btQuaternion_normalize0, _IDL);
  672. HL_PRIM float HL_NAME(btQuaternion_length20)(_ref(btQuaternion)* _this) {
  673. return _unref(_this)->length2();
  674. }
  675. DEFINE_PRIM(_F32, btQuaternion_length20, _IDL);
  676. HL_PRIM float HL_NAME(btQuaternion_length0)(_ref(btQuaternion)* _this) {
  677. return _unref(_this)->length();
  678. }
  679. DEFINE_PRIM(_F32, btQuaternion_length0, _IDL);
  680. HL_PRIM float HL_NAME(btQuaternion_dot1)(_ref(btQuaternion)* _this, _ref(btQuaternion)* q) {
  681. return _unref(_this)->dot(*_unref(q));
  682. }
  683. DEFINE_PRIM(_F32, btQuaternion_dot1, _IDL _IDL);
  684. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_normalized0)(_ref(btQuaternion)* _this) {
  685. return alloc_ref(new btQuaternion(_unref(_this)->normalized()),btQuaternion);
  686. }
  687. DEFINE_PRIM(_IDL, btQuaternion_normalized0, _IDL);
  688. HL_PRIM _ref(btVector3)* HL_NAME(btQuaternion_getAxis0)(_ref(btQuaternion)* _this) {
  689. return alloc_ref(new btVector3(_unref(_this)->getAxis()),btVector3);
  690. }
  691. DEFINE_PRIM(_IDL, btQuaternion_getAxis0, _IDL);
  692. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_inverse0)(_ref(btQuaternion)* _this) {
  693. return alloc_ref(new btQuaternion(_unref(_this)->inverse()),btQuaternion);
  694. }
  695. DEFINE_PRIM(_IDL, btQuaternion_inverse0, _IDL);
  696. HL_PRIM float HL_NAME(btQuaternion_getAngle0)(_ref(btQuaternion)* _this) {
  697. return _unref(_this)->getAngle();
  698. }
  699. DEFINE_PRIM(_F32, btQuaternion_getAngle0, _IDL);
  700. HL_PRIM float HL_NAME(btQuaternion_getAngleShortestPath0)(_ref(btQuaternion)* _this) {
  701. return _unref(_this)->getAngleShortestPath();
  702. }
  703. DEFINE_PRIM(_F32, btQuaternion_getAngleShortestPath0, _IDL);
  704. HL_PRIM float HL_NAME(btQuaternion_angle1)(_ref(btQuaternion)* _this, _ref(btQuaternion)* q) {
  705. return _unref(_this)->angle(*_unref(q));
  706. }
  707. DEFINE_PRIM(_F32, btQuaternion_angle1, _IDL _IDL);
  708. HL_PRIM float HL_NAME(btQuaternion_angleShortestPath1)(_ref(btQuaternion)* _this, _ref(btQuaternion)* q) {
  709. return _unref(_this)->angleShortestPath(*_unref(q));
  710. }
  711. DEFINE_PRIM(_F32, btQuaternion_angleShortestPath1, _IDL _IDL);
  712. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_op_add1)(_ref(btQuaternion)* _this, _ref(btQuaternion)* q) {
  713. return alloc_ref(new btQuaternion(*_unref(_this) + (*_unref(q))),btQuaternion);
  714. }
  715. DEFINE_PRIM(_IDL, btQuaternion_op_add1, _IDL _IDL);
  716. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_op_sub1)(_ref(btQuaternion)* _this, _ref(btQuaternion)* q) {
  717. return alloc_ref(new btQuaternion(*_unref(_this) - (*_unref(q))),btQuaternion);
  718. }
  719. DEFINE_PRIM(_IDL, btQuaternion_op_sub1, _IDL _IDL);
  720. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_op_mul1)(_ref(btQuaternion)* _this, float s) {
  721. return alloc_ref(new btQuaternion(*_unref(_this) * (s)),btQuaternion);
  722. }
  723. DEFINE_PRIM(_IDL, btQuaternion_op_mul1, _IDL _F32);
  724. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_op_mulq1)(_ref(btQuaternion)* _this, _ref(btQuaternion)* q) {
  725. return alloc_ref(new btQuaternion(*_unref(_this) *= (*_unref(q))),btQuaternion);
  726. }
  727. DEFINE_PRIM(_IDL, btQuaternion_op_mulq1, _IDL _IDL);
  728. HL_PRIM _ref(btQuaternion)* HL_NAME(btQuaternion_op_div1)(_ref(btQuaternion)* _this, float s) {
  729. return alloc_ref(new btQuaternion(*_unref(_this) / (s)),btQuaternion);
  730. }
  731. DEFINE_PRIM(_IDL, btQuaternion_op_div1, _IDL _F32);
  732. HL_PRIM void HL_NAME(btMatrix3x3_setEulerZYX3)(_ref(btMatrix3x3)* _this, float ex, float ey, float ez) {
  733. _unref(_this)->setEulerZYX(ex, ey, ez);
  734. }
  735. DEFINE_PRIM(_VOID, btMatrix3x3_setEulerZYX3, _IDL _F32 _F32 _F32);
  736. HL_PRIM void HL_NAME(btMatrix3x3_getRotation1)(_ref(btMatrix3x3)* _this, _ref(btQuaternion)* q) {
  737. _unref(_this)->getRotation(*_unref(q));
  738. }
  739. DEFINE_PRIM(_VOID, btMatrix3x3_getRotation1, _IDL _IDL);
  740. HL_PRIM _ref(btVector3)* HL_NAME(btMatrix3x3_getRow1)(_ref(btMatrix3x3)* _this, int y) {
  741. return alloc_ref(new btVector3(_unref(_this)->getRow(y)),btVector3);
  742. }
  743. DEFINE_PRIM(_IDL, btMatrix3x3_getRow1, _IDL _I32);
  744. HL_PRIM _ref(btTransform)* HL_NAME(btTransform_new0)() {
  745. return alloc_ref((new btTransform()),btTransform);
  746. }
  747. DEFINE_PRIM(_IDL, btTransform_new0,);
  748. HL_PRIM _ref(btTransform)* HL_NAME(btTransform_new2)(_ref(btQuaternion)* q, _ref(btVector3)* v) {
  749. return alloc_ref((new btTransform(*_unref(q), *_unref(v))),btTransform);
  750. }
  751. DEFINE_PRIM(_IDL, btTransform_new2, _IDL _IDL);
  752. HL_PRIM void HL_NAME(btTransform_setIdentity0)(_ref(btTransform)* _this) {
  753. _unref(_this)->setIdentity();
  754. }
  755. DEFINE_PRIM(_VOID, btTransform_setIdentity0, _IDL);
  756. HL_PRIM void HL_NAME(btTransform_setOrigin1)(_ref(btTransform)* _this, _ref(btVector3)* origin) {
  757. _unref(_this)->setOrigin(*_unref(origin));
  758. }
  759. DEFINE_PRIM(_VOID, btTransform_setOrigin1, _IDL _IDL);
  760. HL_PRIM void HL_NAME(btTransform_setRotation1)(_ref(btTransform)* _this, _ref(btQuaternion)* rotation) {
  761. _unref(_this)->setRotation(*_unref(rotation));
  762. }
  763. DEFINE_PRIM(_VOID, btTransform_setRotation1, _IDL _IDL);
  764. HL_PRIM _ref(btVector3)* HL_NAME(btTransform_getOrigin0)(_ref(btTransform)* _this) {
  765. return alloc_ref(new btVector3(_unref(_this)->getOrigin()),btVector3);
  766. }
  767. DEFINE_PRIM(_IDL, btTransform_getOrigin0, _IDL);
  768. HL_PRIM _ref(btQuaternion)* HL_NAME(btTransform_getRotation0)(_ref(btTransform)* _this) {
  769. return alloc_ref(new btQuaternion(_unref(_this)->getRotation()),btQuaternion);
  770. }
  771. DEFINE_PRIM(_IDL, btTransform_getRotation0, _IDL);
  772. HL_PRIM _ref(btMatrix3x3)* HL_NAME(btTransform_getBasis0)(_ref(btTransform)* _this) {
  773. return alloc_ref(new btMatrix3x3(_unref(_this)->getBasis()),btMatrix3x3);
  774. }
  775. DEFINE_PRIM(_IDL, btTransform_getBasis0, _IDL);
  776. HL_PRIM void HL_NAME(btTransform_setFromOpenGLMatrix1)(_ref(btTransform)* _this, float* m) {
  777. _unref(_this)->setFromOpenGLMatrix(m);
  778. }
  779. DEFINE_PRIM(_VOID, btTransform_setFromOpenGLMatrix1, _IDL _BYTES);
  780. HL_PRIM void HL_NAME(btMotionState_getWorldTransform1)(_ref(btMotionState)* _this, _ref(btTransform)* worldTrans) {
  781. _unref(_this)->getWorldTransform(*_unref(worldTrans));
  782. }
  783. DEFINE_PRIM(_VOID, btMotionState_getWorldTransform1, _IDL _IDL);
  784. HL_PRIM void HL_NAME(btMotionState_setWorldTransform1)(_ref(btMotionState)* _this, _ref(btTransform)* worldTrans) {
  785. _unref(_this)->setWorldTransform(*_unref(worldTrans));
  786. }
  787. DEFINE_PRIM(_VOID, btMotionState_setWorldTransform1, _IDL _IDL);
  788. HL_PRIM _ref(btDefaultMotionState)* HL_NAME(btDefaultMotionState_new2)(_ref(btTransform)* startTrans, _ref(btTransform)* centerOfMassOffset) {
  789. if( !startTrans )
  790. return alloc_ref((new btDefaultMotionState()),btDefaultMotionState);
  791. else
  792. if( !centerOfMassOffset )
  793. return alloc_ref((new btDefaultMotionState(*_unref(startTrans))),btDefaultMotionState);
  794. else
  795. return alloc_ref((new btDefaultMotionState(*_unref(startTrans), *_unref(centerOfMassOffset))),btDefaultMotionState);
  796. }
  797. DEFINE_PRIM(_IDL, btDefaultMotionState_new2, _IDL _IDL);
  798. HL_PRIM _ref(btTransform)* HL_NAME(btDefaultMotionState_get_m_graphicsWorldTrans)( _ref(btDefaultMotionState)* _this ) {
  799. return alloc_ref(new btTransform(_unref(_this)->m_graphicsWorldTrans),btTransform);
  800. }
  801. HL_PRIM _ref(btTransform)* HL_NAME(btDefaultMotionState_set_m_graphicsWorldTrans)( _ref(btDefaultMotionState)* _this, _ref(btTransform)* value ) {
  802. _unref(_this)->m_graphicsWorldTrans = *_unref(value);
  803. return value;
  804. }
  805. DEFINE_PRIM(_IDL,btDefaultMotionState_get_m_graphicsWorldTrans,_IDL);
  806. DEFINE_PRIM(_IDL,btDefaultMotionState_set_m_graphicsWorldTrans,_IDL _IDL);
  807. HL_PRIM void HL_NAME(btCollisionObject_setAnisotropicFriction2)(_ref(btCollisionObject)* _this, _ref(btVector3)* anisotropicFriction, int frictionMode) {
  808. _unref(_this)->setAnisotropicFriction(*_unref(anisotropicFriction), frictionMode);
  809. }
  810. DEFINE_PRIM(_VOID, btCollisionObject_setAnisotropicFriction2, _IDL _IDL _I32);
  811. HL_PRIM _ref(btCollisionShape)* HL_NAME(btCollisionObject_getCollisionShape0)(_ref(btCollisionObject)* _this) {
  812. return alloc_ref((_unref(_this)->getCollisionShape()),btCollisionShape);
  813. }
  814. DEFINE_PRIM(_IDL, btCollisionObject_getCollisionShape0, _IDL);
  815. HL_PRIM void HL_NAME(btCollisionObject_setContactProcessingThreshold1)(_ref(btCollisionObject)* _this, float contactProcessingThreshold) {
  816. _unref(_this)->setContactProcessingThreshold(contactProcessingThreshold);
  817. }
  818. DEFINE_PRIM(_VOID, btCollisionObject_setContactProcessingThreshold1, _IDL _F32);
  819. HL_PRIM void HL_NAME(btCollisionObject_setActivationState1)(_ref(btCollisionObject)* _this, int newState) {
  820. _unref(_this)->setActivationState(newState);
  821. }
  822. DEFINE_PRIM(_VOID, btCollisionObject_setActivationState1, _IDL _I32);
  823. HL_PRIM void HL_NAME(btCollisionObject_forceActivationState1)(_ref(btCollisionObject)* _this, int newState) {
  824. _unref(_this)->forceActivationState(newState);
  825. }
  826. DEFINE_PRIM(_VOID, btCollisionObject_forceActivationState1, _IDL _I32);
  827. HL_PRIM void HL_NAME(btCollisionObject_activate1)(_ref(btCollisionObject)* _this, _OPT(bool) forceActivation) {
  828. if( !forceActivation )
  829. _unref(_this)->activate();
  830. else
  831. _unref(_this)->activate(_GET_OPT(forceActivation,b));
  832. }
  833. DEFINE_PRIM(_VOID, btCollisionObject_activate1, _IDL _NULL(_BOOL));
  834. HL_PRIM bool HL_NAME(btCollisionObject_isActive0)(_ref(btCollisionObject)* _this) {
  835. return _unref(_this)->isActive();
  836. }
  837. DEFINE_PRIM(_BOOL, btCollisionObject_isActive0, _IDL);
  838. HL_PRIM bool HL_NAME(btCollisionObject_isKinematicObject0)(_ref(btCollisionObject)* _this) {
  839. return _unref(_this)->isKinematicObject();
  840. }
  841. DEFINE_PRIM(_BOOL, btCollisionObject_isKinematicObject0, _IDL);
  842. HL_PRIM bool HL_NAME(btCollisionObject_isStaticObject0)(_ref(btCollisionObject)* _this) {
  843. return _unref(_this)->isStaticObject();
  844. }
  845. DEFINE_PRIM(_BOOL, btCollisionObject_isStaticObject0, _IDL);
  846. HL_PRIM bool HL_NAME(btCollisionObject_isStaticOrKinematicObject0)(_ref(btCollisionObject)* _this) {
  847. return _unref(_this)->isStaticOrKinematicObject();
  848. }
  849. DEFINE_PRIM(_BOOL, btCollisionObject_isStaticOrKinematicObject0, _IDL);
  850. HL_PRIM void HL_NAME(btCollisionObject_setRestitution1)(_ref(btCollisionObject)* _this, float rest) {
  851. _unref(_this)->setRestitution(rest);
  852. }
  853. DEFINE_PRIM(_VOID, btCollisionObject_setRestitution1, _IDL _F32);
  854. HL_PRIM void HL_NAME(btCollisionObject_setFriction1)(_ref(btCollisionObject)* _this, float frict) {
  855. _unref(_this)->setFriction(frict);
  856. }
  857. DEFINE_PRIM(_VOID, btCollisionObject_setFriction1, _IDL _F32);
  858. HL_PRIM void HL_NAME(btCollisionObject_setRollingFriction1)(_ref(btCollisionObject)* _this, float frict) {
  859. _unref(_this)->setRollingFriction(frict);
  860. }
  861. DEFINE_PRIM(_VOID, btCollisionObject_setRollingFriction1, _IDL _F32);
  862. HL_PRIM _ref(btTransform)* HL_NAME(btCollisionObject_getWorldTransform0)(_ref(btCollisionObject)* _this) {
  863. return alloc_ref(new btTransform(_unref(_this)->getWorldTransform()),btTransform);
  864. }
  865. DEFINE_PRIM(_IDL, btCollisionObject_getWorldTransform0, _IDL);
  866. HL_PRIM int HL_NAME(btCollisionObject_getCollisionFlags0)(_ref(btCollisionObject)* _this) {
  867. return _unref(_this)->getCollisionFlags();
  868. }
  869. DEFINE_PRIM(_I32, btCollisionObject_getCollisionFlags0, _IDL);
  870. HL_PRIM void HL_NAME(btCollisionObject_setCollisionFlags1)(_ref(btCollisionObject)* _this, int flags) {
  871. _unref(_this)->setCollisionFlags(flags);
  872. }
  873. DEFINE_PRIM(_VOID, btCollisionObject_setCollisionFlags1, _IDL _I32);
  874. HL_PRIM void HL_NAME(btCollisionObject_setWorldTransform1)(_ref(btCollisionObject)* _this, _ref(btTransform)* worldTrans) {
  875. _unref(_this)->setWorldTransform(*_unref(worldTrans));
  876. }
  877. DEFINE_PRIM(_VOID, btCollisionObject_setWorldTransform1, _IDL _IDL);
  878. HL_PRIM void HL_NAME(btCollisionObject_setCollisionShape1)(_ref(btCollisionObject)* _this, _ref(btCollisionShape)* collisionShape) {
  879. _unref(_this)->setCollisionShape(_unref(collisionShape));
  880. }
  881. DEFINE_PRIM(_VOID, btCollisionObject_setCollisionShape1, _IDL _IDL);
  882. HL_PRIM void HL_NAME(btCollisionObject_setCcdMotionThreshold1)(_ref(btCollisionObject)* _this, float ccdMotionThreshold) {
  883. _unref(_this)->setCcdMotionThreshold(ccdMotionThreshold);
  884. }
  885. DEFINE_PRIM(_VOID, btCollisionObject_setCcdMotionThreshold1, _IDL _F32);
  886. HL_PRIM void HL_NAME(btCollisionObject_setCcdSweptSphereRadius1)(_ref(btCollisionObject)* _this, float radius) {
  887. _unref(_this)->setCcdSweptSphereRadius(radius);
  888. }
  889. DEFINE_PRIM(_VOID, btCollisionObject_setCcdSweptSphereRadius1, _IDL _F32);
  890. HL_PRIM int HL_NAME(btCollisionObject_getUserIndex0)(_ref(btCollisionObject)* _this) {
  891. return _unref(_this)->getUserIndex();
  892. }
  893. DEFINE_PRIM(_I32, btCollisionObject_getUserIndex0, _IDL);
  894. HL_PRIM void HL_NAME(btCollisionObject_setUserIndex1)(_ref(btCollisionObject)* _this, int index) {
  895. _unref(_this)->setUserIndex(index);
  896. }
  897. DEFINE_PRIM(_VOID, btCollisionObject_setUserIndex1, _IDL _I32);
  898. HL_PRIM void* HL_NAME(btCollisionObject_getUserPointer0)(_ref(btCollisionObject)* _this) {
  899. return _unref(_this)->getUserPointer();
  900. }
  901. DEFINE_PRIM(_BYTES, btCollisionObject_getUserPointer0, _IDL);
  902. HL_PRIM void HL_NAME(btCollisionObject_setUserPointer1)(_ref(btCollisionObject)* _this, void* userPointer) {
  903. _unref(_this)->setUserPointer(userPointer);
  904. }
  905. DEFINE_PRIM(_VOID, btCollisionObject_setUserPointer1, _IDL _BYTES);
  906. HL_PRIM bool HL_NAME(RayResultCallback_hasHit0)(_ref(btCollisionWorld::RayResultCallback)* _this) {
  907. return _unref(_this)->hasHit();
  908. }
  909. DEFINE_PRIM(_BOOL, RayResultCallback_hasHit0, _IDL);
  910. HL_PRIM short HL_NAME(RayResultCallback_get_m_collisionFilterGroup)( _ref(btCollisionWorld::RayResultCallback)* _this ) {
  911. return _unref(_this)->m_collisionFilterGroup;
  912. }
  913. HL_PRIM short HL_NAME(RayResultCallback_set_m_collisionFilterGroup)( _ref(btCollisionWorld::RayResultCallback)* _this, short value ) {
  914. _unref(_this)->m_collisionFilterGroup = (value);
  915. return value;
  916. }
  917. DEFINE_PRIM(_I16,RayResultCallback_get_m_collisionFilterGroup,_IDL);
  918. DEFINE_PRIM(_I16,RayResultCallback_set_m_collisionFilterGroup,_IDL _I16);
  919. HL_PRIM short HL_NAME(RayResultCallback_get_m_collisionFilterMask)( _ref(btCollisionWorld::RayResultCallback)* _this ) {
  920. return _unref(_this)->m_collisionFilterMask;
  921. }
  922. HL_PRIM short HL_NAME(RayResultCallback_set_m_collisionFilterMask)( _ref(btCollisionWorld::RayResultCallback)* _this, short value ) {
  923. _unref(_this)->m_collisionFilterMask = (value);
  924. return value;
  925. }
  926. DEFINE_PRIM(_I16,RayResultCallback_get_m_collisionFilterMask,_IDL);
  927. DEFINE_PRIM(_I16,RayResultCallback_set_m_collisionFilterMask,_IDL _I16);
  928. HL_PRIM HL_CONST _ref(btCollisionObject)* HL_NAME(RayResultCallback_get_m_collisionObject)( _ref(btCollisionWorld::RayResultCallback)* _this ) {
  929. return alloc_ref_const(_unref(_this)->m_collisionObject,btCollisionObject);
  930. }
  931. HL_PRIM HL_CONST _ref(btCollisionObject)* HL_NAME(RayResultCallback_set_m_collisionObject)( _ref(btCollisionWorld::RayResultCallback)* _this, HL_CONST _ref(btCollisionObject)* value ) {
  932. _unref(_this)->m_collisionObject = _unref(value);
  933. return value;
  934. }
  935. DEFINE_PRIM(_IDL,RayResultCallback_get_m_collisionObject,_IDL);
  936. DEFINE_PRIM(_IDL,RayResultCallback_set_m_collisionObject,_IDL _IDL);
  937. HL_PRIM _ref(btCollisionWorld::ClosestRayResultCallback)* HL_NAME(ClosestRayResultCallback_new2)(_ref(btVector3)* from, _ref(btVector3)* to) {
  938. return alloc_ref((new btCollisionWorld::ClosestRayResultCallback(*_unref(from), *_unref(to))),ClosestRayResultCallback);
  939. }
  940. DEFINE_PRIM(_IDL, ClosestRayResultCallback_new2, _IDL _IDL);
  941. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_get_m_rayFromWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this ) {
  942. return alloc_ref(new btVector3(_unref(_this)->m_rayFromWorld),btVector3);
  943. }
  944. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_set_m_rayFromWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this, _ref(btVector3)* value ) {
  945. _unref(_this)->m_rayFromWorld = *_unref(value);
  946. return value;
  947. }
  948. DEFINE_PRIM(_IDL,ClosestRayResultCallback_get_m_rayFromWorld,_IDL);
  949. DEFINE_PRIM(_IDL,ClosestRayResultCallback_set_m_rayFromWorld,_IDL _IDL);
  950. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_get_m_rayToWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this ) {
  951. return alloc_ref(new btVector3(_unref(_this)->m_rayToWorld),btVector3);
  952. }
  953. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_set_m_rayToWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this, _ref(btVector3)* value ) {
  954. _unref(_this)->m_rayToWorld = *_unref(value);
  955. return value;
  956. }
  957. DEFINE_PRIM(_IDL,ClosestRayResultCallback_get_m_rayToWorld,_IDL);
  958. DEFINE_PRIM(_IDL,ClosestRayResultCallback_set_m_rayToWorld,_IDL _IDL);
  959. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_get_m_hitNormalWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this ) {
  960. return alloc_ref(new btVector3(_unref(_this)->m_hitNormalWorld),btVector3);
  961. }
  962. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_set_m_hitNormalWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this, _ref(btVector3)* value ) {
  963. _unref(_this)->m_hitNormalWorld = *_unref(value);
  964. return value;
  965. }
  966. DEFINE_PRIM(_IDL,ClosestRayResultCallback_get_m_hitNormalWorld,_IDL);
  967. DEFINE_PRIM(_IDL,ClosestRayResultCallback_set_m_hitNormalWorld,_IDL _IDL);
  968. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_get_m_hitPointWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this ) {
  969. return alloc_ref(new btVector3(_unref(_this)->m_hitPointWorld),btVector3);
  970. }
  971. HL_PRIM _ref(btVector3)* HL_NAME(ClosestRayResultCallback_set_m_hitPointWorld)( _ref(btCollisionWorld::ClosestRayResultCallback)* _this, _ref(btVector3)* value ) {
  972. _unref(_this)->m_hitPointWorld = *_unref(value);
  973. return value;
  974. }
  975. DEFINE_PRIM(_IDL,ClosestRayResultCallback_get_m_hitPointWorld,_IDL);
  976. DEFINE_PRIM(_IDL,ClosestRayResultCallback_set_m_hitPointWorld,_IDL _IDL);
  977. HL_PRIM HL_CONST _ref(btVector3)* HL_NAME(btManifoldPoint_getPositionWorldOnA0)(_ref(btManifoldPoint)* _this) {
  978. return alloc_ref(new btVector3(_unref(_this)->getPositionWorldOnA()),btVector3);
  979. }
  980. DEFINE_PRIM(_IDL, btManifoldPoint_getPositionWorldOnA0, _IDL);
  981. HL_PRIM HL_CONST _ref(btVector3)* HL_NAME(btManifoldPoint_getPositionWorldOnB0)(_ref(btManifoldPoint)* _this) {
  982. return alloc_ref(new btVector3(_unref(_this)->getPositionWorldOnB()),btVector3);
  983. }
  984. DEFINE_PRIM(_IDL, btManifoldPoint_getPositionWorldOnB0, _IDL);
  985. HL_PRIM HL_CONST double HL_NAME(btManifoldPoint_getAppliedImpulse0)(_ref(btManifoldPoint)* _this) {
  986. return _unref(_this)->getAppliedImpulse();
  987. }
  988. DEFINE_PRIM(_F64, btManifoldPoint_getAppliedImpulse0, _IDL);
  989. HL_PRIM HL_CONST double HL_NAME(btManifoldPoint_getDistance0)(_ref(btManifoldPoint)* _this) {
  990. return _unref(_this)->getDistance();
  991. }
  992. DEFINE_PRIM(_F64, btManifoldPoint_getDistance0, _IDL);
  993. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_get_m_localPointA)( _ref(btManifoldPoint)* _this ) {
  994. return alloc_ref(new btVector3(_unref(_this)->m_localPointA),btVector3);
  995. }
  996. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_set_m_localPointA)( _ref(btManifoldPoint)* _this, _ref(btVector3)* value ) {
  997. _unref(_this)->m_localPointA = *_unref(value);
  998. return value;
  999. }
  1000. DEFINE_PRIM(_IDL,btManifoldPoint_get_m_localPointA,_IDL);
  1001. DEFINE_PRIM(_IDL,btManifoldPoint_set_m_localPointA,_IDL _IDL);
  1002. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_get_m_localPointB)( _ref(btManifoldPoint)* _this ) {
  1003. return alloc_ref(new btVector3(_unref(_this)->m_localPointB),btVector3);
  1004. }
  1005. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_set_m_localPointB)( _ref(btManifoldPoint)* _this, _ref(btVector3)* value ) {
  1006. _unref(_this)->m_localPointB = *_unref(value);
  1007. return value;
  1008. }
  1009. DEFINE_PRIM(_IDL,btManifoldPoint_get_m_localPointB,_IDL);
  1010. DEFINE_PRIM(_IDL,btManifoldPoint_set_m_localPointB,_IDL _IDL);
  1011. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_get_m_positionWorldOnB)( _ref(btManifoldPoint)* _this ) {
  1012. return alloc_ref(new btVector3(_unref(_this)->m_positionWorldOnB),btVector3);
  1013. }
  1014. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_set_m_positionWorldOnB)( _ref(btManifoldPoint)* _this, _ref(btVector3)* value ) {
  1015. _unref(_this)->m_positionWorldOnB = *_unref(value);
  1016. return value;
  1017. }
  1018. DEFINE_PRIM(_IDL,btManifoldPoint_get_m_positionWorldOnB,_IDL);
  1019. DEFINE_PRIM(_IDL,btManifoldPoint_set_m_positionWorldOnB,_IDL _IDL);
  1020. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_get_m_positionWorldOnA)( _ref(btManifoldPoint)* _this ) {
  1021. return alloc_ref(new btVector3(_unref(_this)->m_positionWorldOnA),btVector3);
  1022. }
  1023. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_set_m_positionWorldOnA)( _ref(btManifoldPoint)* _this, _ref(btVector3)* value ) {
  1024. _unref(_this)->m_positionWorldOnA = *_unref(value);
  1025. return value;
  1026. }
  1027. DEFINE_PRIM(_IDL,btManifoldPoint_get_m_positionWorldOnA,_IDL);
  1028. DEFINE_PRIM(_IDL,btManifoldPoint_set_m_positionWorldOnA,_IDL _IDL);
  1029. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_get_m_normalWorldOnB)( _ref(btManifoldPoint)* _this ) {
  1030. return alloc_ref(new btVector3(_unref(_this)->m_normalWorldOnB),btVector3);
  1031. }
  1032. HL_PRIM _ref(btVector3)* HL_NAME(btManifoldPoint_set_m_normalWorldOnB)( _ref(btManifoldPoint)* _this, _ref(btVector3)* value ) {
  1033. _unref(_this)->m_normalWorldOnB = *_unref(value);
  1034. return value;
  1035. }
  1036. DEFINE_PRIM(_IDL,btManifoldPoint_get_m_normalWorldOnB,_IDL);
  1037. DEFINE_PRIM(_IDL,btManifoldPoint_set_m_normalWorldOnB,_IDL _IDL);
  1038. HL_PRIM float HL_NAME(ContactResultCallback_addSingleResult7)(_ref(btCollisionWorld::ContactResultCallback)* _this, _ref(btManifoldPoint)* cp, _ref(btCollisionObjectWrapper)* colObj0Wrap, int partId0, int index0, _ref(btCollisionObjectWrapper)* colObj1Wrap, int partId1, int index1) {
  1039. return _unref(_this)->addSingleResult(*_unref(cp), _unref(colObj0Wrap), partId0, index0, _unref(colObj1Wrap), partId1, index1);
  1040. }
  1041. DEFINE_PRIM(_F32, ContactResultCallback_addSingleResult7, _IDL _IDL _IDL _I32 _I32 _IDL _I32 _I32);
  1042. HL_PRIM int HL_NAME(LocalShapeInfo_get_m_shapePart)( _ref(btCollisionWorld::LocalShapeInfo)* _this ) {
  1043. return _unref(_this)->m_shapePart;
  1044. }
  1045. HL_PRIM int HL_NAME(LocalShapeInfo_set_m_shapePart)( _ref(btCollisionWorld::LocalShapeInfo)* _this, int value ) {
  1046. _unref(_this)->m_shapePart = (value);
  1047. return value;
  1048. }
  1049. DEFINE_PRIM(_I32,LocalShapeInfo_get_m_shapePart,_IDL);
  1050. DEFINE_PRIM(_I32,LocalShapeInfo_set_m_shapePart,_IDL _I32);
  1051. HL_PRIM int HL_NAME(LocalShapeInfo_get_m_triangleIndex)( _ref(btCollisionWorld::LocalShapeInfo)* _this ) {
  1052. return _unref(_this)->m_triangleIndex;
  1053. }
  1054. HL_PRIM int HL_NAME(LocalShapeInfo_set_m_triangleIndex)( _ref(btCollisionWorld::LocalShapeInfo)* _this, int value ) {
  1055. _unref(_this)->m_triangleIndex = (value);
  1056. return value;
  1057. }
  1058. DEFINE_PRIM(_I32,LocalShapeInfo_get_m_triangleIndex,_IDL);
  1059. DEFINE_PRIM(_I32,LocalShapeInfo_set_m_triangleIndex,_IDL _I32);
  1060. HL_PRIM _ref(btCollisionWorld::LocalConvexResult)* HL_NAME(LocalConvexResult_new5)(_ref(btCollisionObject)* hitCollisionObject, _ref(btCollisionWorld::LocalShapeInfo)* localShapeInfo, _ref(btVector3)* hitNormalLocal, _ref(btVector3)* hitPointLocal, float hitFraction) {
  1061. return alloc_ref((new btCollisionWorld::LocalConvexResult(_unref(hitCollisionObject), _unref(localShapeInfo), *_unref(hitNormalLocal), *_unref(hitPointLocal), hitFraction)),LocalConvexResult);
  1062. }
  1063. DEFINE_PRIM(_IDL, LocalConvexResult_new5, _IDL _IDL _IDL _IDL _F32);
  1064. HL_PRIM HL_CONST _ref(btCollisionObject)* HL_NAME(LocalConvexResult_get_m_hitCollisionObject)( _ref(btCollisionWorld::LocalConvexResult)* _this ) {
  1065. return alloc_ref_const(_unref(_this)->m_hitCollisionObject,btCollisionObject);
  1066. }
  1067. HL_PRIM HL_CONST _ref(btCollisionObject)* HL_NAME(LocalConvexResult_set_m_hitCollisionObject)( _ref(btCollisionWorld::LocalConvexResult)* _this, HL_CONST _ref(btCollisionObject)* value ) {
  1068. _unref(_this)->m_hitCollisionObject = _unref(value);
  1069. return value;
  1070. }
  1071. DEFINE_PRIM(_IDL,LocalConvexResult_get_m_hitCollisionObject,_IDL);
  1072. DEFINE_PRIM(_IDL,LocalConvexResult_set_m_hitCollisionObject,_IDL _IDL);
  1073. HL_PRIM _ref(btCollisionWorld::LocalShapeInfo)* HL_NAME(LocalConvexResult_get_m_localShapeInfo)( _ref(btCollisionWorld::LocalConvexResult)* _this ) {
  1074. return alloc_ref(_unref(_this)->m_localShapeInfo,LocalShapeInfo);
  1075. }
  1076. HL_PRIM _ref(btCollisionWorld::LocalShapeInfo)* HL_NAME(LocalConvexResult_set_m_localShapeInfo)( _ref(btCollisionWorld::LocalConvexResult)* _this, _ref(btCollisionWorld::LocalShapeInfo)* value ) {
  1077. _unref(_this)->m_localShapeInfo = _unref(value);
  1078. return value;
  1079. }
  1080. DEFINE_PRIM(_IDL,LocalConvexResult_get_m_localShapeInfo,_IDL);
  1081. DEFINE_PRIM(_IDL,LocalConvexResult_set_m_localShapeInfo,_IDL _IDL);
  1082. HL_PRIM _ref(btVector3)* HL_NAME(LocalConvexResult_get_m_hitNormalLocal)( _ref(btCollisionWorld::LocalConvexResult)* _this ) {
  1083. return alloc_ref(new btVector3(_unref(_this)->m_hitNormalLocal),btVector3);
  1084. }
  1085. HL_PRIM _ref(btVector3)* HL_NAME(LocalConvexResult_set_m_hitNormalLocal)( _ref(btCollisionWorld::LocalConvexResult)* _this, _ref(btVector3)* value ) {
  1086. _unref(_this)->m_hitNormalLocal = *_unref(value);
  1087. return value;
  1088. }
  1089. DEFINE_PRIM(_IDL,LocalConvexResult_get_m_hitNormalLocal,_IDL);
  1090. DEFINE_PRIM(_IDL,LocalConvexResult_set_m_hitNormalLocal,_IDL _IDL);
  1091. HL_PRIM _ref(btVector3)* HL_NAME(LocalConvexResult_get_m_hitPointLocal)( _ref(btCollisionWorld::LocalConvexResult)* _this ) {
  1092. return alloc_ref(new btVector3(_unref(_this)->m_hitPointLocal),btVector3);
  1093. }
  1094. HL_PRIM _ref(btVector3)* HL_NAME(LocalConvexResult_set_m_hitPointLocal)( _ref(btCollisionWorld::LocalConvexResult)* _this, _ref(btVector3)* value ) {
  1095. _unref(_this)->m_hitPointLocal = *_unref(value);
  1096. return value;
  1097. }
  1098. DEFINE_PRIM(_IDL,LocalConvexResult_get_m_hitPointLocal,_IDL);
  1099. DEFINE_PRIM(_IDL,LocalConvexResult_set_m_hitPointLocal,_IDL _IDL);
  1100. HL_PRIM float HL_NAME(LocalConvexResult_get_m_hitFraction)( _ref(btCollisionWorld::LocalConvexResult)* _this ) {
  1101. return _unref(_this)->m_hitFraction;
  1102. }
  1103. HL_PRIM float HL_NAME(LocalConvexResult_set_m_hitFraction)( _ref(btCollisionWorld::LocalConvexResult)* _this, float value ) {
  1104. _unref(_this)->m_hitFraction = (value);
  1105. return value;
  1106. }
  1107. DEFINE_PRIM(_F32,LocalConvexResult_get_m_hitFraction,_IDL);
  1108. DEFINE_PRIM(_F32,LocalConvexResult_set_m_hitFraction,_IDL _F32);
  1109. HL_PRIM bool HL_NAME(ConvexResultCallback_hasHit0)(_ref(btCollisionWorld::ConvexResultCallback)* _this) {
  1110. return _unref(_this)->hasHit();
  1111. }
  1112. DEFINE_PRIM(_BOOL, ConvexResultCallback_hasHit0, _IDL);
  1113. HL_PRIM short HL_NAME(ConvexResultCallback_get_m_collisionFilterGroup)( _ref(btCollisionWorld::ConvexResultCallback)* _this ) {
  1114. return _unref(_this)->m_collisionFilterGroup;
  1115. }
  1116. HL_PRIM short HL_NAME(ConvexResultCallback_set_m_collisionFilterGroup)( _ref(btCollisionWorld::ConvexResultCallback)* _this, short value ) {
  1117. _unref(_this)->m_collisionFilterGroup = (value);
  1118. return value;
  1119. }
  1120. DEFINE_PRIM(_I16,ConvexResultCallback_get_m_collisionFilterGroup,_IDL);
  1121. DEFINE_PRIM(_I16,ConvexResultCallback_set_m_collisionFilterGroup,_IDL _I16);
  1122. HL_PRIM short HL_NAME(ConvexResultCallback_get_m_collisionFilterMask)( _ref(btCollisionWorld::ConvexResultCallback)* _this ) {
  1123. return _unref(_this)->m_collisionFilterMask;
  1124. }
  1125. HL_PRIM short HL_NAME(ConvexResultCallback_set_m_collisionFilterMask)( _ref(btCollisionWorld::ConvexResultCallback)* _this, short value ) {
  1126. _unref(_this)->m_collisionFilterMask = (value);
  1127. return value;
  1128. }
  1129. DEFINE_PRIM(_I16,ConvexResultCallback_get_m_collisionFilterMask,_IDL);
  1130. DEFINE_PRIM(_I16,ConvexResultCallback_set_m_collisionFilterMask,_IDL _I16);
  1131. HL_PRIM float HL_NAME(ConvexResultCallback_get_m_closestHitFraction)( _ref(btCollisionWorld::ConvexResultCallback)* _this ) {
  1132. return _unref(_this)->m_closestHitFraction;
  1133. }
  1134. HL_PRIM float HL_NAME(ConvexResultCallback_set_m_closestHitFraction)( _ref(btCollisionWorld::ConvexResultCallback)* _this, float value ) {
  1135. _unref(_this)->m_closestHitFraction = (value);
  1136. return value;
  1137. }
  1138. DEFINE_PRIM(_F32,ConvexResultCallback_get_m_closestHitFraction,_IDL);
  1139. DEFINE_PRIM(_F32,ConvexResultCallback_set_m_closestHitFraction,_IDL _F32);
  1140. HL_PRIM _ref(btCollisionWorld::ClosestConvexResultCallback)* HL_NAME(ClosestConvexResultCallback_new2)(_ref(btVector3)* convexFromWorld, _ref(btVector3)* convexToWorld) {
  1141. return alloc_ref((new btCollisionWorld::ClosestConvexResultCallback(*_unref(convexFromWorld), *_unref(convexToWorld))),ClosestConvexResultCallback);
  1142. }
  1143. DEFINE_PRIM(_IDL, ClosestConvexResultCallback_new2, _IDL _IDL);
  1144. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_get_m_convexFromWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this ) {
  1145. return alloc_ref(new btVector3(_unref(_this)->m_convexFromWorld),btVector3);
  1146. }
  1147. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_set_m_convexFromWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this, _ref(btVector3)* value ) {
  1148. _unref(_this)->m_convexFromWorld = *_unref(value);
  1149. return value;
  1150. }
  1151. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_get_m_convexFromWorld,_IDL);
  1152. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_set_m_convexFromWorld,_IDL _IDL);
  1153. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_get_m_convexToWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this ) {
  1154. return alloc_ref(new btVector3(_unref(_this)->m_convexToWorld),btVector3);
  1155. }
  1156. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_set_m_convexToWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this, _ref(btVector3)* value ) {
  1157. _unref(_this)->m_convexToWorld = *_unref(value);
  1158. return value;
  1159. }
  1160. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_get_m_convexToWorld,_IDL);
  1161. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_set_m_convexToWorld,_IDL _IDL);
  1162. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_get_m_hitNormalWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this ) {
  1163. return alloc_ref(new btVector3(_unref(_this)->m_hitNormalWorld),btVector3);
  1164. }
  1165. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_set_m_hitNormalWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this, _ref(btVector3)* value ) {
  1166. _unref(_this)->m_hitNormalWorld = *_unref(value);
  1167. return value;
  1168. }
  1169. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_get_m_hitNormalWorld,_IDL);
  1170. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_set_m_hitNormalWorld,_IDL _IDL);
  1171. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_get_m_hitPointWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this ) {
  1172. return alloc_ref(new btVector3(_unref(_this)->m_hitPointWorld),btVector3);
  1173. }
  1174. HL_PRIM _ref(btVector3)* HL_NAME(ClosestConvexResultCallback_set_m_hitPointWorld)( _ref(btCollisionWorld::ClosestConvexResultCallback)* _this, _ref(btVector3)* value ) {
  1175. _unref(_this)->m_hitPointWorld = *_unref(value);
  1176. return value;
  1177. }
  1178. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_get_m_hitPointWorld,_IDL);
  1179. DEFINE_PRIM(_IDL,ClosestConvexResultCallback_set_m_hitPointWorld,_IDL _IDL);
  1180. HL_PRIM void HL_NAME(btCollisionShape_setLocalScaling1)(_ref(btCollisionShape)* _this, _ref(btVector3)* scaling) {
  1181. _unref(_this)->setLocalScaling(*_unref(scaling));
  1182. }
  1183. DEFINE_PRIM(_VOID, btCollisionShape_setLocalScaling1, _IDL _IDL);
  1184. HL_PRIM void HL_NAME(btCollisionShape_calculateLocalInertia2)(_ref(btCollisionShape)* _this, float mass, _ref(btVector3)* inertia) {
  1185. _unref(_this)->calculateLocalInertia(mass, *_unref(inertia));
  1186. }
  1187. DEFINE_PRIM(_VOID, btCollisionShape_calculateLocalInertia2, _IDL _F32 _IDL);
  1188. HL_PRIM void HL_NAME(btCollisionShape_setMargin1)(_ref(btCollisionShape)* _this, float margin) {
  1189. _unref(_this)->setMargin(margin);
  1190. }
  1191. DEFINE_PRIM(_VOID, btCollisionShape_setMargin1, _IDL _F32);
  1192. HL_PRIM float HL_NAME(btCollisionShape_getMargin0)(_ref(btCollisionShape)* _this) {
  1193. return _unref(_this)->getMargin();
  1194. }
  1195. DEFINE_PRIM(_F32, btCollisionShape_getMargin0, _IDL);
  1196. HL_PRIM _ref(btConvexTriangleMeshShape)* HL_NAME(btConvexTriangleMeshShape_new2)(_ref(btStridingMeshInterface)* meshInterface, _OPT(bool) calcAabb) {
  1197. if( !calcAabb )
  1198. return alloc_ref((new btConvexTriangleMeshShape(_unref(meshInterface))),btConvexTriangleMeshShape);
  1199. else
  1200. return alloc_ref((new btConvexTriangleMeshShape(_unref(meshInterface), _GET_OPT(calcAabb,b))),btConvexTriangleMeshShape);
  1201. }
  1202. DEFINE_PRIM(_IDL, btConvexTriangleMeshShape_new2, _IDL _NULL(_BOOL));
  1203. HL_PRIM _ref(btBoxShape)* HL_NAME(btBoxShape_new1)(_ref(btVector3)* boxHalfExtents) {
  1204. return alloc_ref((new btBoxShape(*_unref(boxHalfExtents))),btBoxShape);
  1205. }
  1206. DEFINE_PRIM(_IDL, btBoxShape_new1, _IDL);
  1207. HL_PRIM void HL_NAME(btBoxShape_setMargin1)(_ref(btBoxShape)* _this, float margin) {
  1208. _unref(_this)->setMargin(margin);
  1209. }
  1210. DEFINE_PRIM(_VOID, btBoxShape_setMargin1, _IDL _F32);
  1211. HL_PRIM float HL_NAME(btBoxShape_getMargin0)(_ref(btBoxShape)* _this) {
  1212. return _unref(_this)->getMargin();
  1213. }
  1214. DEFINE_PRIM(_F32, btBoxShape_getMargin0, _IDL);
  1215. HL_PRIM _ref(btCapsuleShape)* HL_NAME(btCapsuleShape_new2)(float radius, float height) {
  1216. return alloc_ref((new btCapsuleShape(radius, height)),btCapsuleShape);
  1217. }
  1218. DEFINE_PRIM(_IDL, btCapsuleShape_new2, _F32 _F32);
  1219. HL_PRIM void HL_NAME(btCapsuleShape_setMargin1)(_ref(btCapsuleShape)* _this, float margin) {
  1220. _unref(_this)->setMargin(margin);
  1221. }
  1222. DEFINE_PRIM(_VOID, btCapsuleShape_setMargin1, _IDL _F32);
  1223. HL_PRIM float HL_NAME(btCapsuleShape_getMargin0)(_ref(btCapsuleShape)* _this) {
  1224. return _unref(_this)->getMargin();
  1225. }
  1226. DEFINE_PRIM(_F32, btCapsuleShape_getMargin0, _IDL);
  1227. HL_PRIM _ref(btCapsuleShapeX)* HL_NAME(btCapsuleShapeX_new2)(float radius, float height) {
  1228. return alloc_ref((new btCapsuleShapeX(radius, height)),btCapsuleShapeX);
  1229. }
  1230. DEFINE_PRIM(_IDL, btCapsuleShapeX_new2, _F32 _F32);
  1231. HL_PRIM void HL_NAME(btCapsuleShapeX_setMargin1)(_ref(btCapsuleShapeX)* _this, float margin) {
  1232. _unref(_this)->setMargin(margin);
  1233. }
  1234. DEFINE_PRIM(_VOID, btCapsuleShapeX_setMargin1, _IDL _F32);
  1235. HL_PRIM float HL_NAME(btCapsuleShapeX_getMargin0)(_ref(btCapsuleShapeX)* _this) {
  1236. return _unref(_this)->getMargin();
  1237. }
  1238. DEFINE_PRIM(_F32, btCapsuleShapeX_getMargin0, _IDL);
  1239. HL_PRIM _ref(btCapsuleShapeZ)* HL_NAME(btCapsuleShapeZ_new2)(float radius, float height) {
  1240. return alloc_ref((new btCapsuleShapeZ(radius, height)),btCapsuleShapeZ);
  1241. }
  1242. DEFINE_PRIM(_IDL, btCapsuleShapeZ_new2, _F32 _F32);
  1243. HL_PRIM void HL_NAME(btCapsuleShapeZ_setMargin1)(_ref(btCapsuleShapeZ)* _this, float margin) {
  1244. _unref(_this)->setMargin(margin);
  1245. }
  1246. DEFINE_PRIM(_VOID, btCapsuleShapeZ_setMargin1, _IDL _F32);
  1247. HL_PRIM float HL_NAME(btCapsuleShapeZ_getMargin0)(_ref(btCapsuleShapeZ)* _this) {
  1248. return _unref(_this)->getMargin();
  1249. }
  1250. DEFINE_PRIM(_F32, btCapsuleShapeZ_getMargin0, _IDL);
  1251. HL_PRIM _ref(btCylinderShape)* HL_NAME(btCylinderShape_new1)(_ref(btVector3)* halfExtents) {
  1252. return alloc_ref((new btCylinderShape(*_unref(halfExtents))),btCylinderShape);
  1253. }
  1254. DEFINE_PRIM(_IDL, btCylinderShape_new1, _IDL);
  1255. HL_PRIM void HL_NAME(btCylinderShape_setMargin1)(_ref(btCylinderShape)* _this, float margin) {
  1256. _unref(_this)->setMargin(margin);
  1257. }
  1258. DEFINE_PRIM(_VOID, btCylinderShape_setMargin1, _IDL _F32);
  1259. HL_PRIM float HL_NAME(btCylinderShape_getMargin0)(_ref(btCylinderShape)* _this) {
  1260. return _unref(_this)->getMargin();
  1261. }
  1262. DEFINE_PRIM(_F32, btCylinderShape_getMargin0, _IDL);
  1263. HL_PRIM _ref(btCylinderShapeX)* HL_NAME(btCylinderShapeX_new1)(_ref(btVector3)* halfExtents) {
  1264. return alloc_ref((new btCylinderShapeX(*_unref(halfExtents))),btCylinderShapeX);
  1265. }
  1266. DEFINE_PRIM(_IDL, btCylinderShapeX_new1, _IDL);
  1267. HL_PRIM void HL_NAME(btCylinderShapeX_setMargin1)(_ref(btCylinderShapeX)* _this, float margin) {
  1268. _unref(_this)->setMargin(margin);
  1269. }
  1270. DEFINE_PRIM(_VOID, btCylinderShapeX_setMargin1, _IDL _F32);
  1271. HL_PRIM float HL_NAME(btCylinderShapeX_getMargin0)(_ref(btCylinderShapeX)* _this) {
  1272. return _unref(_this)->getMargin();
  1273. }
  1274. DEFINE_PRIM(_F32, btCylinderShapeX_getMargin0, _IDL);
  1275. HL_PRIM _ref(btCylinderShapeZ)* HL_NAME(btCylinderShapeZ_new1)(_ref(btVector3)* halfExtents) {
  1276. return alloc_ref((new btCylinderShapeZ(*_unref(halfExtents))),btCylinderShapeZ);
  1277. }
  1278. DEFINE_PRIM(_IDL, btCylinderShapeZ_new1, _IDL);
  1279. HL_PRIM void HL_NAME(btCylinderShapeZ_setMargin1)(_ref(btCylinderShapeZ)* _this, float margin) {
  1280. _unref(_this)->setMargin(margin);
  1281. }
  1282. DEFINE_PRIM(_VOID, btCylinderShapeZ_setMargin1, _IDL _F32);
  1283. HL_PRIM float HL_NAME(btCylinderShapeZ_getMargin0)(_ref(btCylinderShapeZ)* _this) {
  1284. return _unref(_this)->getMargin();
  1285. }
  1286. DEFINE_PRIM(_F32, btCylinderShapeZ_getMargin0, _IDL);
  1287. HL_PRIM _ref(btSphereShape)* HL_NAME(btSphereShape_new1)(float radius) {
  1288. return alloc_ref((new btSphereShape(radius)),btSphereShape);
  1289. }
  1290. DEFINE_PRIM(_IDL, btSphereShape_new1, _F32);
  1291. HL_PRIM void HL_NAME(btSphereShape_setMargin1)(_ref(btSphereShape)* _this, float margin) {
  1292. _unref(_this)->setMargin(margin);
  1293. }
  1294. DEFINE_PRIM(_VOID, btSphereShape_setMargin1, _IDL _F32);
  1295. HL_PRIM float HL_NAME(btSphereShape_getMargin0)(_ref(btSphereShape)* _this) {
  1296. return _unref(_this)->getMargin();
  1297. }
  1298. DEFINE_PRIM(_F32, btSphereShape_getMargin0, _IDL);
  1299. HL_PRIM _ref(btConeShape)* HL_NAME(btConeShape_new2)(float radius, float height) {
  1300. return alloc_ref((new btConeShape(radius, height)),btConeShape);
  1301. }
  1302. DEFINE_PRIM(_IDL, btConeShape_new2, _F32 _F32);
  1303. HL_PRIM _ref(btConvexHullShape)* HL_NAME(btConvexHullShape_new0)() {
  1304. return alloc_ref((new btConvexHullShape()),btConvexHullShape);
  1305. }
  1306. DEFINE_PRIM(_IDL, btConvexHullShape_new0,);
  1307. HL_PRIM void HL_NAME(btConvexHullShape_addPoint2)(_ref(btConvexHullShape)* _this, _ref(btVector3)* point, _OPT(bool) recalculateLocalAABB) {
  1308. if( !recalculateLocalAABB )
  1309. _unref(_this)->addPoint(*_unref(point));
  1310. else
  1311. _unref(_this)->addPoint(*_unref(point), _GET_OPT(recalculateLocalAABB,b));
  1312. }
  1313. DEFINE_PRIM(_VOID, btConvexHullShape_addPoint2, _IDL _IDL _NULL(_BOOL));
  1314. HL_PRIM void HL_NAME(btConvexHullShape_setMargin1)(_ref(btConvexHullShape)* _this, float margin) {
  1315. _unref(_this)->setMargin(margin);
  1316. }
  1317. DEFINE_PRIM(_VOID, btConvexHullShape_setMargin1, _IDL _F32);
  1318. HL_PRIM float HL_NAME(btConvexHullShape_getMargin0)(_ref(btConvexHullShape)* _this) {
  1319. return _unref(_this)->getMargin();
  1320. }
  1321. DEFINE_PRIM(_F32, btConvexHullShape_getMargin0, _IDL);
  1322. HL_PRIM _ref(btConeShapeX)* HL_NAME(btConeShapeX_new2)(float radius, float height) {
  1323. return alloc_ref((new btConeShapeX(radius, height)),btConeShapeX);
  1324. }
  1325. DEFINE_PRIM(_IDL, btConeShapeX_new2, _F32 _F32);
  1326. HL_PRIM _ref(btConeShapeZ)* HL_NAME(btConeShapeZ_new2)(float radius, float height) {
  1327. return alloc_ref((new btConeShapeZ(radius, height)),btConeShapeZ);
  1328. }
  1329. DEFINE_PRIM(_IDL, btConeShapeZ_new2, _F32 _F32);
  1330. HL_PRIM _ref(btCompoundShape)* HL_NAME(btCompoundShape_new1)(_OPT(bool) enableDynamicAabbTree) {
  1331. if( !enableDynamicAabbTree )
  1332. return alloc_ref((new btCompoundShape()),btCompoundShape);
  1333. else
  1334. return alloc_ref((new btCompoundShape(_GET_OPT(enableDynamicAabbTree,b))),btCompoundShape);
  1335. }
  1336. DEFINE_PRIM(_IDL, btCompoundShape_new1, _NULL(_BOOL));
  1337. HL_PRIM void HL_NAME(btCompoundShape_addChildShape2)(_ref(btCompoundShape)* _this, _ref(btTransform)* localTransform, _ref(btCollisionShape)* shape) {
  1338. _unref(_this)->addChildShape(*_unref(localTransform), _unref(shape));
  1339. }
  1340. DEFINE_PRIM(_VOID, btCompoundShape_addChildShape2, _IDL _IDL _IDL);
  1341. HL_PRIM void HL_NAME(btCompoundShape_removeChildShapeByIndex1)(_ref(btCompoundShape)* _this, int childShapeindex) {
  1342. _unref(_this)->removeChildShapeByIndex(childShapeindex);
  1343. }
  1344. DEFINE_PRIM(_VOID, btCompoundShape_removeChildShapeByIndex1, _IDL _I32);
  1345. HL_PRIM HL_CONST int HL_NAME(btCompoundShape_getNumChildShapes0)(_ref(btCompoundShape)* _this) {
  1346. return _unref(_this)->getNumChildShapes();
  1347. }
  1348. DEFINE_PRIM(_I32, btCompoundShape_getNumChildShapes0, _IDL);
  1349. HL_PRIM _ref(btCollisionShape)* HL_NAME(btCompoundShape_getChildShape1)(_ref(btCompoundShape)* _this, int index) {
  1350. return alloc_ref((_unref(_this)->getChildShape(index)),btCollisionShape);
  1351. }
  1352. DEFINE_PRIM(_IDL, btCompoundShape_getChildShape1, _IDL _I32);
  1353. HL_PRIM void HL_NAME(btCompoundShape_setMargin1)(_ref(btCompoundShape)* _this, float margin) {
  1354. _unref(_this)->setMargin(margin);
  1355. }
  1356. DEFINE_PRIM(_VOID, btCompoundShape_setMargin1, _IDL _F32);
  1357. HL_PRIM float HL_NAME(btCompoundShape_getMargin0)(_ref(btCompoundShape)* _this) {
  1358. return _unref(_this)->getMargin();
  1359. }
  1360. DEFINE_PRIM(_F32, btCompoundShape_getMargin0, _IDL);
  1361. HL_PRIM _ref(btTriangleMesh)* HL_NAME(btTriangleMesh_new2)(_OPT(bool) use32bitIndices, _OPT(bool) use4componentVertices) {
  1362. if( !use32bitIndices )
  1363. return alloc_ref((new btTriangleMesh()),btTriangleMesh);
  1364. else
  1365. if( !use4componentVertices )
  1366. return alloc_ref((new btTriangleMesh(_GET_OPT(use32bitIndices,b))),btTriangleMesh);
  1367. else
  1368. return alloc_ref((new btTriangleMesh(_GET_OPT(use32bitIndices,b), _GET_OPT(use4componentVertices,b))),btTriangleMesh);
  1369. }
  1370. DEFINE_PRIM(_IDL, btTriangleMesh_new2, _NULL(_BOOL) _NULL(_BOOL));
  1371. HL_PRIM void HL_NAME(btTriangleMesh_addTriangle4)(_ref(btTriangleMesh)* _this, _ref(btVector3)* vertex0, _ref(btVector3)* vertex1, _ref(btVector3)* vertex2, _OPT(bool) removeDuplicateVertices) {
  1372. if( !removeDuplicateVertices )
  1373. _unref(_this)->addTriangle(*_unref(vertex0), *_unref(vertex1), *_unref(vertex2));
  1374. else
  1375. _unref(_this)->addTriangle(*_unref(vertex0), *_unref(vertex1), *_unref(vertex2), _GET_OPT(removeDuplicateVertices,b));
  1376. }
  1377. DEFINE_PRIM(_VOID, btTriangleMesh_addTriangle4, _IDL _IDL _IDL _IDL _NULL(_BOOL));
  1378. HL_PRIM _ref(btStaticPlaneShape)* HL_NAME(btStaticPlaneShape_new2)(_ref(btVector3)* planeNormal, float planeConstant) {
  1379. return alloc_ref((new btStaticPlaneShape(*_unref(planeNormal), planeConstant)),btStaticPlaneShape);
  1380. }
  1381. DEFINE_PRIM(_IDL, btStaticPlaneShape_new2, _IDL _F32);
  1382. HL_PRIM _ref(btBvhTriangleMeshShape)* HL_NAME(btBvhTriangleMeshShape_new3)(_ref(btStridingMeshInterface)* meshInterface, bool useQuantizedAabbCompression, _OPT(bool) buildBvh) {
  1383. if( !buildBvh )
  1384. return alloc_ref((new btBvhTriangleMeshShape(_unref(meshInterface), useQuantizedAabbCompression)),btBvhTriangleMeshShape);
  1385. else
  1386. return alloc_ref((new btBvhTriangleMeshShape(_unref(meshInterface), useQuantizedAabbCompression, _GET_OPT(buildBvh,b))),btBvhTriangleMeshShape);
  1387. }
  1388. DEFINE_PRIM(_IDL, btBvhTriangleMeshShape_new3, _IDL _BOOL _NULL(_BOOL));
  1389. HL_PRIM _ref(btHeightfieldTerrainShape)* HL_NAME(btHeightfieldTerrainShape_new9)(int heightStickWidth, int heightStickLength, void* heightfieldData, float heightScale, float minHeight, float maxHeight, int upAxis, int hdt, bool flipQuadEdges) {
  1390. return alloc_ref((new btHeightfieldTerrainShape(heightStickWidth, heightStickLength, heightfieldData, heightScale, minHeight, maxHeight, upAxis, PHY_ScalarType__values[hdt], flipQuadEdges)),btHeightfieldTerrainShape);
  1391. }
  1392. DEFINE_PRIM(_IDL, btHeightfieldTerrainShape_new9, _I32 _I32 _BYTES _F32 _F32 _F32 _I32 _I32 _BOOL);
  1393. HL_PRIM void HL_NAME(btHeightfieldTerrainShape_setMargin1)(_ref(btHeightfieldTerrainShape)* _this, float margin) {
  1394. _unref(_this)->setMargin(margin);
  1395. }
  1396. DEFINE_PRIM(_VOID, btHeightfieldTerrainShape_setMargin1, _IDL _F32);
  1397. HL_PRIM float HL_NAME(btHeightfieldTerrainShape_getMargin0)(_ref(btHeightfieldTerrainShape)* _this) {
  1398. return _unref(_this)->getMargin();
  1399. }
  1400. DEFINE_PRIM(_F32, btHeightfieldTerrainShape_getMargin0, _IDL);
  1401. HL_PRIM _ref(btDefaultCollisionConstructionInfo)* HL_NAME(btDefaultCollisionConstructionInfo_new0)() {
  1402. return alloc_ref((new btDefaultCollisionConstructionInfo()),btDefaultCollisionConstructionInfo);
  1403. }
  1404. DEFINE_PRIM(_IDL, btDefaultCollisionConstructionInfo_new0,);
  1405. HL_PRIM _ref(btDefaultCollisionConfiguration)* HL_NAME(btDefaultCollisionConfiguration_new1)(_ref(btDefaultCollisionConstructionInfo)* info) {
  1406. if( !info )
  1407. return alloc_ref((new btDefaultCollisionConfiguration()),btDefaultCollisionConfiguration);
  1408. else
  1409. return alloc_ref((new btDefaultCollisionConfiguration(*_unref(info))),btDefaultCollisionConfiguration);
  1410. }
  1411. DEFINE_PRIM(_IDL, btDefaultCollisionConfiguration_new1, _IDL);
  1412. HL_PRIM _ref(btPersistentManifold)* HL_NAME(btPersistentManifold_new0)() {
  1413. return alloc_ref((new btPersistentManifold()),btPersistentManifold);
  1414. }
  1415. DEFINE_PRIM(_IDL, btPersistentManifold_new0,);
  1416. HL_PRIM HL_CONST _ref(btCollisionObject)* HL_NAME(btPersistentManifold_getBody00)(_ref(btPersistentManifold)* _this) {
  1417. return alloc_ref_const((_unref(_this)->getBody0()),btCollisionObject);
  1418. }
  1419. DEFINE_PRIM(_IDL, btPersistentManifold_getBody00, _IDL);
  1420. HL_PRIM HL_CONST _ref(btCollisionObject)* HL_NAME(btPersistentManifold_getBody10)(_ref(btPersistentManifold)* _this) {
  1421. return alloc_ref_const((_unref(_this)->getBody1()),btCollisionObject);
  1422. }
  1423. DEFINE_PRIM(_IDL, btPersistentManifold_getBody10, _IDL);
  1424. HL_PRIM int HL_NAME(btPersistentManifold_getNumContacts0)(_ref(btPersistentManifold)* _this) {
  1425. return _unref(_this)->getNumContacts();
  1426. }
  1427. DEFINE_PRIM(_I32, btPersistentManifold_getNumContacts0, _IDL);
  1428. HL_PRIM _ref(btManifoldPoint)* HL_NAME(btPersistentManifold_getContactPoint1)(_ref(btPersistentManifold)* _this, int index) {
  1429. return alloc_ref(new btManifoldPoint(_unref(_this)->getContactPoint(index)),btManifoldPoint);
  1430. }
  1431. DEFINE_PRIM(_IDL, btPersistentManifold_getContactPoint1, _IDL _I32);
  1432. HL_PRIM int HL_NAME(btDispatcher_getNumManifolds0)(_ref(btDispatcher)* _this) {
  1433. return _unref(_this)->getNumManifolds();
  1434. }
  1435. DEFINE_PRIM(_I32, btDispatcher_getNumManifolds0, _IDL);
  1436. HL_PRIM _ref(btPersistentManifold)* HL_NAME(btDispatcher_getManifoldByIndexInternal1)(_ref(btDispatcher)* _this, int index) {
  1437. return alloc_ref((_unref(_this)->getManifoldByIndexInternal(index)),btPersistentManifold);
  1438. }
  1439. DEFINE_PRIM(_IDL, btDispatcher_getManifoldByIndexInternal1, _IDL _I32);
  1440. HL_PRIM _ref(btCollisionDispatcher)* HL_NAME(btCollisionDispatcher_new1)(_ref(btDefaultCollisionConfiguration)* conf) {
  1441. return alloc_ref((new btCollisionDispatcher(_unref(conf))),btCollisionDispatcher);
  1442. }
  1443. DEFINE_PRIM(_IDL, btCollisionDispatcher_new1, _IDL);
  1444. HL_PRIM void HL_NAME(btOverlappingPairCache_setInternalGhostPairCallback1)(_ref(btOverlappingPairCache)* _this, _ref(btOverlappingPairCallback)* ghostPairCallback) {
  1445. _unref(_this)->setInternalGhostPairCallback(_unref(ghostPairCallback));
  1446. }
  1447. DEFINE_PRIM(_VOID, btOverlappingPairCache_setInternalGhostPairCallback1, _IDL _IDL);
  1448. HL_PRIM _ref(btAxisSweep3)* HL_NAME(btAxisSweep3_new5)(_ref(btVector3)* worldAabbMin, _ref(btVector3)* worldAabbMax, _OPT(int) maxHandles, _ref(btOverlappingPairCache)* pairCache, _OPT(bool) disableRaycastAccelerator) {
  1449. if( !maxHandles )
  1450. return alloc_ref((new btAxisSweep3(*_unref(worldAabbMin), *_unref(worldAabbMax))),btAxisSweep3);
  1451. else
  1452. if( !pairCache )
  1453. return alloc_ref((new btAxisSweep3(*_unref(worldAabbMin), *_unref(worldAabbMax), _GET_OPT(maxHandles,i))),btAxisSweep3);
  1454. else
  1455. if( !disableRaycastAccelerator )
  1456. return alloc_ref((new btAxisSweep3(*_unref(worldAabbMin), *_unref(worldAabbMax), _GET_OPT(maxHandles,i), _unref(pairCache))),btAxisSweep3);
  1457. else
  1458. return alloc_ref((new btAxisSweep3(*_unref(worldAabbMin), *_unref(worldAabbMax), _GET_OPT(maxHandles,i), _unref(pairCache), _GET_OPT(disableRaycastAccelerator,b))),btAxisSweep3);
  1459. }
  1460. DEFINE_PRIM(_IDL, btAxisSweep3_new5, _IDL _IDL _NULL(_I32) _IDL _NULL(_BOOL));
  1461. HL_PRIM _ref(btDbvtBroadphase)* HL_NAME(btDbvtBroadphase_new0)() {
  1462. return alloc_ref((new btDbvtBroadphase()),btDbvtBroadphase);
  1463. }
  1464. DEFINE_PRIM(_IDL, btDbvtBroadphase_new0,);
  1465. HL_PRIM _ref(btRigidBody::btRigidBodyConstructionInfo)* HL_NAME(btRigidBodyConstructionInfo_new4)(float mass, _ref(btMotionState)* motionState, _ref(btCollisionShape)* collisionShape, _ref(btVector3)* localInertia) {
  1466. if( !localInertia )
  1467. return alloc_ref((new btRigidBody::btRigidBodyConstructionInfo(mass, _unref(motionState), _unref(collisionShape))),btRigidBodyConstructionInfo);
  1468. else
  1469. return alloc_ref((new btRigidBody::btRigidBodyConstructionInfo(mass, _unref(motionState), _unref(collisionShape), *_unref(localInertia))),btRigidBodyConstructionInfo);
  1470. }
  1471. DEFINE_PRIM(_IDL, btRigidBodyConstructionInfo_new4, _F32 _IDL _IDL _IDL);
  1472. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_linearDamping)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1473. return _unref(_this)->m_linearDamping;
  1474. }
  1475. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_linearDamping)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1476. _unref(_this)->m_linearDamping = (value);
  1477. return value;
  1478. }
  1479. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_linearDamping,_IDL);
  1480. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_linearDamping,_IDL _F32);
  1481. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_angularDamping)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1482. return _unref(_this)->m_angularDamping;
  1483. }
  1484. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_angularDamping)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1485. _unref(_this)->m_angularDamping = (value);
  1486. return value;
  1487. }
  1488. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_angularDamping,_IDL);
  1489. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_angularDamping,_IDL _F32);
  1490. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_friction)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1491. return _unref(_this)->m_friction;
  1492. }
  1493. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_friction)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1494. _unref(_this)->m_friction = (value);
  1495. return value;
  1496. }
  1497. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_friction,_IDL);
  1498. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_friction,_IDL _F32);
  1499. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_rollingFriction)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1500. return _unref(_this)->m_rollingFriction;
  1501. }
  1502. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_rollingFriction)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1503. _unref(_this)->m_rollingFriction = (value);
  1504. return value;
  1505. }
  1506. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_rollingFriction,_IDL);
  1507. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_rollingFriction,_IDL _F32);
  1508. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_restitution)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1509. return _unref(_this)->m_restitution;
  1510. }
  1511. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_restitution)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1512. _unref(_this)->m_restitution = (value);
  1513. return value;
  1514. }
  1515. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_restitution,_IDL);
  1516. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_restitution,_IDL _F32);
  1517. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_linearSleepingThreshold)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1518. return _unref(_this)->m_linearSleepingThreshold;
  1519. }
  1520. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_linearSleepingThreshold)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1521. _unref(_this)->m_linearSleepingThreshold = (value);
  1522. return value;
  1523. }
  1524. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_linearSleepingThreshold,_IDL);
  1525. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_linearSleepingThreshold,_IDL _F32);
  1526. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_angularSleepingThreshold)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1527. return _unref(_this)->m_angularSleepingThreshold;
  1528. }
  1529. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_angularSleepingThreshold)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1530. _unref(_this)->m_angularSleepingThreshold = (value);
  1531. return value;
  1532. }
  1533. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_angularSleepingThreshold,_IDL);
  1534. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_angularSleepingThreshold,_IDL _F32);
  1535. HL_PRIM bool HL_NAME(btRigidBodyConstructionInfo_get_m_additionalDamping)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1536. return _unref(_this)->m_additionalDamping;
  1537. }
  1538. HL_PRIM bool HL_NAME(btRigidBodyConstructionInfo_set_m_additionalDamping)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, bool value ) {
  1539. _unref(_this)->m_additionalDamping = (value);
  1540. return value;
  1541. }
  1542. DEFINE_PRIM(_BOOL,btRigidBodyConstructionInfo_get_m_additionalDamping,_IDL);
  1543. DEFINE_PRIM(_BOOL,btRigidBodyConstructionInfo_set_m_additionalDamping,_IDL _BOOL);
  1544. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_additionalDampingFactor)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1545. return _unref(_this)->m_additionalDampingFactor;
  1546. }
  1547. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_additionalDampingFactor)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1548. _unref(_this)->m_additionalDampingFactor = (value);
  1549. return value;
  1550. }
  1551. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_additionalDampingFactor,_IDL);
  1552. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_additionalDampingFactor,_IDL _F32);
  1553. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_additionalLinearDampingThresholdSqr)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1554. return _unref(_this)->m_additionalLinearDampingThresholdSqr;
  1555. }
  1556. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_additionalLinearDampingThresholdSqr)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1557. _unref(_this)->m_additionalLinearDampingThresholdSqr = (value);
  1558. return value;
  1559. }
  1560. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_additionalLinearDampingThresholdSqr,_IDL);
  1561. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_additionalLinearDampingThresholdSqr,_IDL _F32);
  1562. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_additionalAngularDampingThresholdSqr)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1563. return _unref(_this)->m_additionalAngularDampingThresholdSqr;
  1564. }
  1565. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_additionalAngularDampingThresholdSqr)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1566. _unref(_this)->m_additionalAngularDampingThresholdSqr = (value);
  1567. return value;
  1568. }
  1569. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_additionalAngularDampingThresholdSqr,_IDL);
  1570. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_additionalAngularDampingThresholdSqr,_IDL _F32);
  1571. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_get_m_additionalAngularDampingFactor)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this ) {
  1572. return _unref(_this)->m_additionalAngularDampingFactor;
  1573. }
  1574. HL_PRIM float HL_NAME(btRigidBodyConstructionInfo_set_m_additionalAngularDampingFactor)( _ref(btRigidBody::btRigidBodyConstructionInfo)* _this, float value ) {
  1575. _unref(_this)->m_additionalAngularDampingFactor = (value);
  1576. return value;
  1577. }
  1578. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_get_m_additionalAngularDampingFactor,_IDL);
  1579. DEFINE_PRIM(_F32,btRigidBodyConstructionInfo_set_m_additionalAngularDampingFactor,_IDL _F32);
  1580. HL_PRIM _ref(btRigidBody)* HL_NAME(btRigidBody_new1)(_ref(btRigidBody::btRigidBodyConstructionInfo)* constructionInfo) {
  1581. return alloc_ref((new btRigidBody(*_unref(constructionInfo))),btRigidBody);
  1582. }
  1583. DEFINE_PRIM(_IDL, btRigidBody_new1, _IDL);
  1584. HL_PRIM HL_CONST _ref(btTransform)* HL_NAME(btRigidBody_getCenterOfMassTransform0)(_ref(btRigidBody)* _this) {
  1585. return alloc_ref(new btTransform(_unref(_this)->getCenterOfMassTransform()),btTransform);
  1586. }
  1587. DEFINE_PRIM(_IDL, btRigidBody_getCenterOfMassTransform0, _IDL);
  1588. HL_PRIM void HL_NAME(btRigidBody_setCenterOfMassTransform1)(_ref(btRigidBody)* _this, _ref(btTransform)* xform) {
  1589. _unref(_this)->setCenterOfMassTransform(*_unref(xform));
  1590. }
  1591. DEFINE_PRIM(_VOID, btRigidBody_setCenterOfMassTransform1, _IDL _IDL);
  1592. HL_PRIM void HL_NAME(btRigidBody_setSleepingThresholds2)(_ref(btRigidBody)* _this, float linear, float angular) {
  1593. _unref(_this)->setSleepingThresholds(linear, angular);
  1594. }
  1595. DEFINE_PRIM(_VOID, btRigidBody_setSleepingThresholds2, _IDL _F32 _F32);
  1596. HL_PRIM void HL_NAME(btRigidBody_setDamping2)(_ref(btRigidBody)* _this, float lin_damping, float ang_damping) {
  1597. _unref(_this)->setDamping(lin_damping, ang_damping);
  1598. }
  1599. DEFINE_PRIM(_VOID, btRigidBody_setDamping2, _IDL _F32 _F32);
  1600. HL_PRIM void HL_NAME(btRigidBody_setMassProps2)(_ref(btRigidBody)* _this, float mass, _ref(btVector3)* inertia) {
  1601. _unref(_this)->setMassProps(mass, *_unref(inertia));
  1602. }
  1603. DEFINE_PRIM(_VOID, btRigidBody_setMassProps2, _IDL _F32 _IDL);
  1604. HL_PRIM void HL_NAME(btRigidBody_setLinearFactor1)(_ref(btRigidBody)* _this, _ref(btVector3)* linearFactor) {
  1605. _unref(_this)->setLinearFactor(*_unref(linearFactor));
  1606. }
  1607. DEFINE_PRIM(_VOID, btRigidBody_setLinearFactor1, _IDL _IDL);
  1608. HL_PRIM void HL_NAME(btRigidBody_applyTorque1)(_ref(btRigidBody)* _this, _ref(btVector3)* torque) {
  1609. _unref(_this)->applyTorque(*_unref(torque));
  1610. }
  1611. DEFINE_PRIM(_VOID, btRigidBody_applyTorque1, _IDL _IDL);
  1612. HL_PRIM void HL_NAME(btRigidBody_applyForce2)(_ref(btRigidBody)* _this, _ref(btVector3)* force, _ref(btVector3)* rel_pos) {
  1613. _unref(_this)->applyForce(*_unref(force), *_unref(rel_pos));
  1614. }
  1615. DEFINE_PRIM(_VOID, btRigidBody_applyForce2, _IDL _IDL _IDL);
  1616. HL_PRIM void HL_NAME(btRigidBody_applyCentralForce1)(_ref(btRigidBody)* _this, _ref(btVector3)* force) {
  1617. _unref(_this)->applyCentralForce(*_unref(force));
  1618. }
  1619. DEFINE_PRIM(_VOID, btRigidBody_applyCentralForce1, _IDL _IDL);
  1620. HL_PRIM void HL_NAME(btRigidBody_applyTorqueImpulse1)(_ref(btRigidBody)* _this, _ref(btVector3)* torque) {
  1621. _unref(_this)->applyTorqueImpulse(*_unref(torque));
  1622. }
  1623. DEFINE_PRIM(_VOID, btRigidBody_applyTorqueImpulse1, _IDL _IDL);
  1624. HL_PRIM void HL_NAME(btRigidBody_applyImpulse2)(_ref(btRigidBody)* _this, _ref(btVector3)* impulse, _ref(btVector3)* rel_pos) {
  1625. _unref(_this)->applyImpulse(*_unref(impulse), *_unref(rel_pos));
  1626. }
  1627. DEFINE_PRIM(_VOID, btRigidBody_applyImpulse2, _IDL _IDL _IDL);
  1628. HL_PRIM void HL_NAME(btRigidBody_applyCentralImpulse1)(_ref(btRigidBody)* _this, _ref(btVector3)* impulse) {
  1629. _unref(_this)->applyCentralImpulse(*_unref(impulse));
  1630. }
  1631. DEFINE_PRIM(_VOID, btRigidBody_applyCentralImpulse1, _IDL _IDL);
  1632. HL_PRIM void HL_NAME(btRigidBody_updateInertiaTensor0)(_ref(btRigidBody)* _this) {
  1633. _unref(_this)->updateInertiaTensor();
  1634. }
  1635. DEFINE_PRIM(_VOID, btRigidBody_updateInertiaTensor0, _IDL);
  1636. HL_PRIM HL_CONST _ref(btVector3)* HL_NAME(btRigidBody_getLinearVelocity0)(_ref(btRigidBody)* _this) {
  1637. return alloc_ref(new btVector3(_unref(_this)->getLinearVelocity()),btVector3);
  1638. }
  1639. DEFINE_PRIM(_IDL, btRigidBody_getLinearVelocity0, _IDL);
  1640. HL_PRIM HL_CONST _ref(btVector3)* HL_NAME(btRigidBody_getAngularVelocity0)(_ref(btRigidBody)* _this) {
  1641. return alloc_ref(new btVector3(_unref(_this)->getAngularVelocity()),btVector3);
  1642. }
  1643. DEFINE_PRIM(_IDL, btRigidBody_getAngularVelocity0, _IDL);
  1644. HL_PRIM void HL_NAME(btRigidBody_setLinearVelocity1)(_ref(btRigidBody)* _this, _ref(btVector3)* lin_vel) {
  1645. _unref(_this)->setLinearVelocity(*_unref(lin_vel));
  1646. }
  1647. DEFINE_PRIM(_VOID, btRigidBody_setLinearVelocity1, _IDL _IDL);
  1648. HL_PRIM void HL_NAME(btRigidBody_setAngularVelocity1)(_ref(btRigidBody)* _this, _ref(btVector3)* ang_vel) {
  1649. _unref(_this)->setAngularVelocity(*_unref(ang_vel));
  1650. }
  1651. DEFINE_PRIM(_VOID, btRigidBody_setAngularVelocity1, _IDL _IDL);
  1652. HL_PRIM _ref(btMotionState)* HL_NAME(btRigidBody_getMotionState0)(_ref(btRigidBody)* _this) {
  1653. return alloc_ref((_unref(_this)->getMotionState()),btMotionState);
  1654. }
  1655. DEFINE_PRIM(_IDL, btRigidBody_getMotionState0, _IDL);
  1656. HL_PRIM void HL_NAME(btRigidBody_setMotionState1)(_ref(btRigidBody)* _this, _ref(btMotionState)* motionState) {
  1657. _unref(_this)->setMotionState(_unref(motionState));
  1658. }
  1659. DEFINE_PRIM(_VOID, btRigidBody_setMotionState1, _IDL _IDL);
  1660. HL_PRIM void HL_NAME(btRigidBody_setAngularFactor1)(_ref(btRigidBody)* _this, _ref(btVector3)* angularFactor) {
  1661. _unref(_this)->setAngularFactor(*_unref(angularFactor));
  1662. }
  1663. DEFINE_PRIM(_VOID, btRigidBody_setAngularFactor1, _IDL _IDL);
  1664. HL_PRIM _ref(btRigidBody)* HL_NAME(btRigidBody_upcast1)(_ref(btRigidBody)* _this, _ref(btCollisionObject)* colObj) {
  1665. return alloc_ref((_unref(_this)->upcast(_unref(colObj))),btRigidBody);
  1666. }
  1667. DEFINE_PRIM(_IDL, btRigidBody_upcast1, _IDL _IDL);
  1668. HL_PRIM void HL_NAME(btRigidBody_getAabb2)(_ref(btRigidBody)* _this, _ref(btVector3)* aabbMin, _ref(btVector3)* aabbMax) {
  1669. _unref(_this)->getAabb(*_unref(aabbMin), *_unref(aabbMax));
  1670. }
  1671. DEFINE_PRIM(_VOID, btRigidBody_getAabb2, _IDL _IDL _IDL);
  1672. HL_PRIM _ref(btConstraintSetting)* HL_NAME(btConstraintSetting_new0)() {
  1673. return alloc_ref((new btConstraintSetting()),btConstraintSetting);
  1674. }
  1675. DEFINE_PRIM(_IDL, btConstraintSetting_new0,);
  1676. HL_PRIM float HL_NAME(btConstraintSetting_get_m_tau)( _ref(btConstraintSetting)* _this ) {
  1677. return _unref(_this)->m_tau;
  1678. }
  1679. HL_PRIM float HL_NAME(btConstraintSetting_set_m_tau)( _ref(btConstraintSetting)* _this, float value ) {
  1680. _unref(_this)->m_tau = (value);
  1681. return value;
  1682. }
  1683. DEFINE_PRIM(_F32,btConstraintSetting_get_m_tau,_IDL);
  1684. DEFINE_PRIM(_F32,btConstraintSetting_set_m_tau,_IDL _F32);
  1685. HL_PRIM float HL_NAME(btConstraintSetting_get_m_damping)( _ref(btConstraintSetting)* _this ) {
  1686. return _unref(_this)->m_damping;
  1687. }
  1688. HL_PRIM float HL_NAME(btConstraintSetting_set_m_damping)( _ref(btConstraintSetting)* _this, float value ) {
  1689. _unref(_this)->m_damping = (value);
  1690. return value;
  1691. }
  1692. DEFINE_PRIM(_F32,btConstraintSetting_get_m_damping,_IDL);
  1693. DEFINE_PRIM(_F32,btConstraintSetting_set_m_damping,_IDL _F32);
  1694. HL_PRIM float HL_NAME(btConstraintSetting_get_m_impulseClamp)( _ref(btConstraintSetting)* _this ) {
  1695. return _unref(_this)->m_impulseClamp;
  1696. }
  1697. HL_PRIM float HL_NAME(btConstraintSetting_set_m_impulseClamp)( _ref(btConstraintSetting)* _this, float value ) {
  1698. _unref(_this)->m_impulseClamp = (value);
  1699. return value;
  1700. }
  1701. DEFINE_PRIM(_F32,btConstraintSetting_get_m_impulseClamp,_IDL);
  1702. DEFINE_PRIM(_F32,btConstraintSetting_set_m_impulseClamp,_IDL _F32);
  1703. HL_PRIM void HL_NAME(btTypedConstraint_enableFeedback1)(_ref(btTypedConstraint)* _this, bool needsFeedback) {
  1704. _unref(_this)->enableFeedback(needsFeedback);
  1705. }
  1706. DEFINE_PRIM(_VOID, btTypedConstraint_enableFeedback1, _IDL _BOOL);
  1707. HL_PRIM HL_CONST float HL_NAME(btTypedConstraint_getBreakingImpulseThreshold0)(_ref(btTypedConstraint)* _this) {
  1708. return _unref(_this)->getBreakingImpulseThreshold();
  1709. }
  1710. DEFINE_PRIM(_F32, btTypedConstraint_getBreakingImpulseThreshold0, _IDL);
  1711. HL_PRIM void HL_NAME(btTypedConstraint_setBreakingImpulseThreshold1)(_ref(btTypedConstraint)* _this, float threshold) {
  1712. _unref(_this)->setBreakingImpulseThreshold(threshold);
  1713. }
  1714. DEFINE_PRIM(_VOID, btTypedConstraint_setBreakingImpulseThreshold1, _IDL _F32);
  1715. HL_PRIM HL_CONST float HL_NAME(btTypedConstraint_getParam2)(_ref(btTypedConstraint)* _this, int num, int axis) {
  1716. return _unref(_this)->getParam(num, axis);
  1717. }
  1718. DEFINE_PRIM(_F32, btTypedConstraint_getParam2, _IDL _I32 _I32);
  1719. HL_PRIM void HL_NAME(btTypedConstraint_setParam3)(_ref(btTypedConstraint)* _this, int num, float value, int axis) {
  1720. _unref(_this)->setParam(num, value, axis);
  1721. }
  1722. DEFINE_PRIM(_VOID, btTypedConstraint_setParam3, _IDL _I32 _F32 _I32);
  1723. HL_PRIM _ref(btPoint2PointConstraint)* HL_NAME(btPoint2PointConstraint_new4)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btVector3)* pivotInA, _ref(btVector3)* pivotInB) {
  1724. return alloc_ref((new btPoint2PointConstraint(*_unref(rbA), *_unref(rbB), *_unref(pivotInA), *_unref(pivotInB))),btPoint2PointConstraint);
  1725. }
  1726. DEFINE_PRIM(_IDL, btPoint2PointConstraint_new4, _IDL _IDL _IDL _IDL);
  1727. HL_PRIM _ref(btPoint2PointConstraint)* HL_NAME(btPoint2PointConstraint_new2)(_ref(btRigidBody)* rbA, _ref(btVector3)* pivotInA) {
  1728. return alloc_ref((new btPoint2PointConstraint(*_unref(rbA), *_unref(pivotInA))),btPoint2PointConstraint);
  1729. }
  1730. DEFINE_PRIM(_IDL, btPoint2PointConstraint_new2, _IDL _IDL);
  1731. HL_PRIM void HL_NAME(btPoint2PointConstraint_setPivotA1)(_ref(btPoint2PointConstraint)* _this, _ref(btVector3)* pivotA) {
  1732. _unref(_this)->setPivotA(*_unref(pivotA));
  1733. }
  1734. DEFINE_PRIM(_VOID, btPoint2PointConstraint_setPivotA1, _IDL _IDL);
  1735. HL_PRIM void HL_NAME(btPoint2PointConstraint_setPivotB1)(_ref(btPoint2PointConstraint)* _this, _ref(btVector3)* pivotB) {
  1736. _unref(_this)->setPivotB(*_unref(pivotB));
  1737. }
  1738. DEFINE_PRIM(_VOID, btPoint2PointConstraint_setPivotB1, _IDL _IDL);
  1739. HL_PRIM HL_CONST _ref(btVector3)* HL_NAME(btPoint2PointConstraint_getPivotInA0)(_ref(btPoint2PointConstraint)* _this) {
  1740. return alloc_ref(new btVector3(_unref(_this)->getPivotInA()),btVector3);
  1741. }
  1742. DEFINE_PRIM(_IDL, btPoint2PointConstraint_getPivotInA0, _IDL);
  1743. HL_PRIM HL_CONST _ref(btVector3)* HL_NAME(btPoint2PointConstraint_getPivotInB0)(_ref(btPoint2PointConstraint)* _this) {
  1744. return alloc_ref(new btVector3(_unref(_this)->getPivotInB()),btVector3);
  1745. }
  1746. DEFINE_PRIM(_IDL, btPoint2PointConstraint_getPivotInB0, _IDL);
  1747. HL_PRIM _ref(btConstraintSetting)* HL_NAME(btPoint2PointConstraint_get_m_setting)( _ref(btPoint2PointConstraint)* _this ) {
  1748. return alloc_ref(new btConstraintSetting(_unref(_this)->m_setting),btConstraintSetting);
  1749. }
  1750. HL_PRIM _ref(btConstraintSetting)* HL_NAME(btPoint2PointConstraint_set_m_setting)( _ref(btPoint2PointConstraint)* _this, _ref(btConstraintSetting)* value ) {
  1751. _unref(_this)->m_setting = *_unref(value);
  1752. return value;
  1753. }
  1754. DEFINE_PRIM(_IDL,btPoint2PointConstraint_get_m_setting,_IDL);
  1755. DEFINE_PRIM(_IDL,btPoint2PointConstraint_set_m_setting,_IDL _IDL);
  1756. HL_PRIM _ref(btGeneric6DofConstraint)* HL_NAME(btGeneric6DofConstraint_new5)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btTransform)* frameInA, _ref(btTransform)* frameInB, bool useLinearFrameReferenceFrameA) {
  1757. return alloc_ref((new btGeneric6DofConstraint(*_unref(rbA), *_unref(rbB), *_unref(frameInA), *_unref(frameInB), useLinearFrameReferenceFrameA)),btGeneric6DofConstraint);
  1758. }
  1759. DEFINE_PRIM(_IDL, btGeneric6DofConstraint_new5, _IDL _IDL _IDL _IDL _BOOL);
  1760. HL_PRIM _ref(btGeneric6DofConstraint)* HL_NAME(btGeneric6DofConstraint_new3)(_ref(btRigidBody)* rbB, _ref(btTransform)* frameInB, bool useLinearFrameReferenceFrameB) {
  1761. return alloc_ref((new btGeneric6DofConstraint(*_unref(rbB), *_unref(frameInB), useLinearFrameReferenceFrameB)),btGeneric6DofConstraint);
  1762. }
  1763. DEFINE_PRIM(_IDL, btGeneric6DofConstraint_new3, _IDL _IDL _BOOL);
  1764. HL_PRIM void HL_NAME(btGeneric6DofConstraint_setLinearLowerLimit1)(_ref(btGeneric6DofConstraint)* _this, _ref(btVector3)* linearLower) {
  1765. _unref(_this)->setLinearLowerLimit(*_unref(linearLower));
  1766. }
  1767. DEFINE_PRIM(_VOID, btGeneric6DofConstraint_setLinearLowerLimit1, _IDL _IDL);
  1768. HL_PRIM void HL_NAME(btGeneric6DofConstraint_setLinearUpperLimit1)(_ref(btGeneric6DofConstraint)* _this, _ref(btVector3)* linearUpper) {
  1769. _unref(_this)->setLinearUpperLimit(*_unref(linearUpper));
  1770. }
  1771. DEFINE_PRIM(_VOID, btGeneric6DofConstraint_setLinearUpperLimit1, _IDL _IDL);
  1772. HL_PRIM void HL_NAME(btGeneric6DofConstraint_setAngularLowerLimit1)(_ref(btGeneric6DofConstraint)* _this, _ref(btVector3)* angularLower) {
  1773. _unref(_this)->setAngularLowerLimit(*_unref(angularLower));
  1774. }
  1775. DEFINE_PRIM(_VOID, btGeneric6DofConstraint_setAngularLowerLimit1, _IDL _IDL);
  1776. HL_PRIM void HL_NAME(btGeneric6DofConstraint_setAngularUpperLimit1)(_ref(btGeneric6DofConstraint)* _this, _ref(btVector3)* angularUpper) {
  1777. _unref(_this)->setAngularUpperLimit(*_unref(angularUpper));
  1778. }
  1779. DEFINE_PRIM(_VOID, btGeneric6DofConstraint_setAngularUpperLimit1, _IDL _IDL);
  1780. HL_PRIM _ref(btGeneric6DofSpringConstraint)* HL_NAME(btGeneric6DofSpringConstraint_new5)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btTransform)* frameInA, _ref(btTransform)* frameInB, bool useLinearFrameReferenceFrameA) {
  1781. return alloc_ref((new btGeneric6DofSpringConstraint(*_unref(rbA), *_unref(rbB), *_unref(frameInA), *_unref(frameInB), useLinearFrameReferenceFrameA)),btGeneric6DofSpringConstraint);
  1782. }
  1783. DEFINE_PRIM(_IDL, btGeneric6DofSpringConstraint_new5, _IDL _IDL _IDL _IDL _BOOL);
  1784. HL_PRIM _ref(btGeneric6DofSpringConstraint)* HL_NAME(btGeneric6DofSpringConstraint_new3)(_ref(btRigidBody)* rbB, _ref(btTransform)* frameInB, bool useLinearFrameReferenceFrameB) {
  1785. return alloc_ref((new btGeneric6DofSpringConstraint(*_unref(rbB), *_unref(frameInB), useLinearFrameReferenceFrameB)),btGeneric6DofSpringConstraint);
  1786. }
  1787. DEFINE_PRIM(_IDL, btGeneric6DofSpringConstraint_new3, _IDL _IDL _BOOL);
  1788. HL_PRIM void HL_NAME(btGeneric6DofSpringConstraint_enableSpring2)(_ref(btGeneric6DofSpringConstraint)* _this, int index, bool onOff) {
  1789. _unref(_this)->enableSpring(index, onOff);
  1790. }
  1791. DEFINE_PRIM(_VOID, btGeneric6DofSpringConstraint_enableSpring2, _IDL _I32 _BOOL);
  1792. HL_PRIM void HL_NAME(btGeneric6DofSpringConstraint_setStiffness2)(_ref(btGeneric6DofSpringConstraint)* _this, int index, float stiffness) {
  1793. _unref(_this)->setStiffness(index, stiffness);
  1794. }
  1795. DEFINE_PRIM(_VOID, btGeneric6DofSpringConstraint_setStiffness2, _IDL _I32 _F32);
  1796. HL_PRIM void HL_NAME(btGeneric6DofSpringConstraint_setDamping2)(_ref(btGeneric6DofSpringConstraint)* _this, int index, float damping) {
  1797. _unref(_this)->setDamping(index, damping);
  1798. }
  1799. DEFINE_PRIM(_VOID, btGeneric6DofSpringConstraint_setDamping2, _IDL _I32 _F32);
  1800. HL_PRIM _ref(btSequentialImpulseConstraintSolver)* HL_NAME(btSequentialImpulseConstraintSolver_new0)() {
  1801. return alloc_ref((new btSequentialImpulseConstraintSolver()),btSequentialImpulseConstraintSolver);
  1802. }
  1803. DEFINE_PRIM(_IDL, btSequentialImpulseConstraintSolver_new0,);
  1804. HL_PRIM _ref(btConeTwistConstraint)* HL_NAME(btConeTwistConstraint_new4)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btTransform)* rbAFrame, _ref(btTransform)* rbBFrame) {
  1805. return alloc_ref((new btConeTwistConstraint(*_unref(rbA), *_unref(rbB), *_unref(rbAFrame), *_unref(rbBFrame))),btConeTwistConstraint);
  1806. }
  1807. DEFINE_PRIM(_IDL, btConeTwistConstraint_new4, _IDL _IDL _IDL _IDL);
  1808. HL_PRIM _ref(btConeTwistConstraint)* HL_NAME(btConeTwistConstraint_new2)(_ref(btRigidBody)* rbA, _ref(btTransform)* rbAFrame) {
  1809. return alloc_ref((new btConeTwistConstraint(*_unref(rbA), *_unref(rbAFrame))),btConeTwistConstraint);
  1810. }
  1811. DEFINE_PRIM(_IDL, btConeTwistConstraint_new2, _IDL _IDL);
  1812. HL_PRIM void HL_NAME(btConeTwistConstraint_setLimit2)(_ref(btConeTwistConstraint)* _this, int limitIndex, float limitValue) {
  1813. _unref(_this)->setLimit(limitIndex, limitValue);
  1814. }
  1815. DEFINE_PRIM(_VOID, btConeTwistConstraint_setLimit2, _IDL _I32 _F32);
  1816. HL_PRIM void HL_NAME(btConeTwistConstraint_setAngularOnly1)(_ref(btConeTwistConstraint)* _this, bool angularOnly) {
  1817. _unref(_this)->setAngularOnly(angularOnly);
  1818. }
  1819. DEFINE_PRIM(_VOID, btConeTwistConstraint_setAngularOnly1, _IDL _BOOL);
  1820. HL_PRIM void HL_NAME(btConeTwistConstraint_setDamping1)(_ref(btConeTwistConstraint)* _this, float damping) {
  1821. _unref(_this)->setDamping(damping);
  1822. }
  1823. DEFINE_PRIM(_VOID, btConeTwistConstraint_setDamping1, _IDL _F32);
  1824. HL_PRIM void HL_NAME(btConeTwistConstraint_enableMotor1)(_ref(btConeTwistConstraint)* _this, bool b) {
  1825. _unref(_this)->enableMotor(b);
  1826. }
  1827. DEFINE_PRIM(_VOID, btConeTwistConstraint_enableMotor1, _IDL _BOOL);
  1828. HL_PRIM void HL_NAME(btConeTwistConstraint_setMaxMotorImpulse1)(_ref(btConeTwistConstraint)* _this, float maxMotorImpulse) {
  1829. _unref(_this)->setMaxMotorImpulse(maxMotorImpulse);
  1830. }
  1831. DEFINE_PRIM(_VOID, btConeTwistConstraint_setMaxMotorImpulse1, _IDL _F32);
  1832. HL_PRIM void HL_NAME(btConeTwistConstraint_setMaxMotorImpulseNormalized1)(_ref(btConeTwistConstraint)* _this, float maxMotorImpulse) {
  1833. _unref(_this)->setMaxMotorImpulseNormalized(maxMotorImpulse);
  1834. }
  1835. DEFINE_PRIM(_VOID, btConeTwistConstraint_setMaxMotorImpulseNormalized1, _IDL _F32);
  1836. HL_PRIM void HL_NAME(btConeTwistConstraint_setMotorTarget1)(_ref(btConeTwistConstraint)* _this, _ref(btQuaternion)* q) {
  1837. _unref(_this)->setMotorTarget(*_unref(q));
  1838. }
  1839. DEFINE_PRIM(_VOID, btConeTwistConstraint_setMotorTarget1, _IDL _IDL);
  1840. HL_PRIM void HL_NAME(btConeTwistConstraint_setMotorTargetInConstraintSpace1)(_ref(btConeTwistConstraint)* _this, _ref(btQuaternion)* q) {
  1841. _unref(_this)->setMotorTargetInConstraintSpace(*_unref(q));
  1842. }
  1843. DEFINE_PRIM(_VOID, btConeTwistConstraint_setMotorTargetInConstraintSpace1, _IDL _IDL);
  1844. HL_PRIM _ref(btHingeConstraint)* HL_NAME(btHingeConstraint_new7)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btVector3)* pivotInA, _ref(btVector3)* pivotInB, _ref(btVector3)* axisInA, _ref(btVector3)* axisInB, _OPT(bool) useReferenceFrameA) {
  1845. if( !useReferenceFrameA )
  1846. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(rbB), *_unref(pivotInA), *_unref(pivotInB), *_unref(axisInA), *_unref(axisInB))),btHingeConstraint);
  1847. else
  1848. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(rbB), *_unref(pivotInA), *_unref(pivotInB), *_unref(axisInA), *_unref(axisInB), _GET_OPT(useReferenceFrameA,b))),btHingeConstraint);
  1849. }
  1850. DEFINE_PRIM(_IDL, btHingeConstraint_new7, _IDL _IDL _IDL _IDL _IDL _IDL _NULL(_BOOL));
  1851. HL_PRIM _ref(btHingeConstraint)* HL_NAME(btHingeConstraint_new4)(_ref(btRigidBody)* rbA, _ref(btVector3)* pivotInA, _ref(btVector3)* axisInA, _OPT(bool) useReferenceFrameA) {
  1852. if( !useReferenceFrameA )
  1853. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(pivotInA), *_unref(axisInA))),btHingeConstraint);
  1854. else
  1855. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(pivotInA), *_unref(axisInA), _GET_OPT(useReferenceFrameA,b))),btHingeConstraint);
  1856. }
  1857. DEFINE_PRIM(_IDL, btHingeConstraint_new4, _IDL _IDL _IDL _NULL(_BOOL));
  1858. HL_PRIM _ref(btHingeConstraint)* HL_NAME(btHingeConstraint_new5)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btTransform)* rbAFrame, _ref(btTransform)* rbBFrame, _OPT(bool) useReferenceFrameA) {
  1859. if( !useReferenceFrameA )
  1860. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(rbB), *_unref(rbAFrame), *_unref(rbBFrame))),btHingeConstraint);
  1861. else
  1862. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(rbB), *_unref(rbAFrame), *_unref(rbBFrame), _GET_OPT(useReferenceFrameA,b))),btHingeConstraint);
  1863. }
  1864. DEFINE_PRIM(_IDL, btHingeConstraint_new5, _IDL _IDL _IDL _IDL _NULL(_BOOL));
  1865. HL_PRIM _ref(btHingeConstraint)* HL_NAME(btHingeConstraint_new3)(_ref(btRigidBody)* rbA, _ref(btTransform)* rbAFrame, _OPT(bool) useReferenceFrameA) {
  1866. if( !useReferenceFrameA )
  1867. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(rbAFrame))),btHingeConstraint);
  1868. else
  1869. return alloc_ref((new btHingeConstraint(*_unref(rbA), *_unref(rbAFrame), _GET_OPT(useReferenceFrameA,b))),btHingeConstraint);
  1870. }
  1871. DEFINE_PRIM(_IDL, btHingeConstraint_new3, _IDL _IDL _NULL(_BOOL));
  1872. HL_PRIM void HL_NAME(btHingeConstraint_setLimit5)(_ref(btHingeConstraint)* _this, float low, float high, float softness, float biasFactor, _OPT(float) relaxationFactor) {
  1873. if( !relaxationFactor )
  1874. _unref(_this)->setLimit(low, high, softness, biasFactor);
  1875. else
  1876. _unref(_this)->setLimit(low, high, softness, biasFactor, _GET_OPT(relaxationFactor,f));
  1877. }
  1878. DEFINE_PRIM(_VOID, btHingeConstraint_setLimit5, _IDL _F32 _F32 _F32 _F32 _NULL(_F32));
  1879. HL_PRIM void HL_NAME(btHingeConstraint_enableAngularMotor3)(_ref(btHingeConstraint)* _this, bool enableMotor, float targetVelocity, float maxMotorImpulse) {
  1880. _unref(_this)->enableAngularMotor(enableMotor, targetVelocity, maxMotorImpulse);
  1881. }
  1882. DEFINE_PRIM(_VOID, btHingeConstraint_enableAngularMotor3, _IDL _BOOL _F32 _F32);
  1883. HL_PRIM void HL_NAME(btHingeConstraint_setAngularOnly1)(_ref(btHingeConstraint)* _this, bool angularOnly) {
  1884. _unref(_this)->setAngularOnly(angularOnly);
  1885. }
  1886. DEFINE_PRIM(_VOID, btHingeConstraint_setAngularOnly1, _IDL _BOOL);
  1887. HL_PRIM void HL_NAME(btHingeConstraint_enableMotor1)(_ref(btHingeConstraint)* _this, bool enableMotor) {
  1888. _unref(_this)->enableMotor(enableMotor);
  1889. }
  1890. DEFINE_PRIM(_VOID, btHingeConstraint_enableMotor1, _IDL _BOOL);
  1891. HL_PRIM void HL_NAME(btHingeConstraint_setMaxMotorImpulse1)(_ref(btHingeConstraint)* _this, float maxMotorImpulse) {
  1892. _unref(_this)->setMaxMotorImpulse(maxMotorImpulse);
  1893. }
  1894. DEFINE_PRIM(_VOID, btHingeConstraint_setMaxMotorImpulse1, _IDL _F32);
  1895. HL_PRIM void HL_NAME(btHingeConstraint_setMotorTarget2)(_ref(btHingeConstraint)* _this, _ref(btQuaternion)* qAinB, float dt) {
  1896. _unref(_this)->setMotorTarget(*_unref(qAinB), dt);
  1897. }
  1898. DEFINE_PRIM(_VOID, btHingeConstraint_setMotorTarget2, _IDL _IDL _F32);
  1899. HL_PRIM _ref(btSliderConstraint)* HL_NAME(btSliderConstraint_new5)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btTransform)* frameInA, _ref(btTransform)* frameInB, bool useLinearReferenceFrameA) {
  1900. return alloc_ref((new btSliderConstraint(*_unref(rbA), *_unref(rbB), *_unref(frameInA), *_unref(frameInB), useLinearReferenceFrameA)),btSliderConstraint);
  1901. }
  1902. DEFINE_PRIM(_IDL, btSliderConstraint_new5, _IDL _IDL _IDL _IDL _BOOL);
  1903. HL_PRIM _ref(btSliderConstraint)* HL_NAME(btSliderConstraint_new3)(_ref(btRigidBody)* rbB, _ref(btTransform)* frameInB, bool useLinearReferenceFrameA) {
  1904. return alloc_ref((new btSliderConstraint(*_unref(rbB), *_unref(frameInB), useLinearReferenceFrameA)),btSliderConstraint);
  1905. }
  1906. DEFINE_PRIM(_IDL, btSliderConstraint_new3, _IDL _IDL _BOOL);
  1907. HL_PRIM void HL_NAME(btSliderConstraint_setLowerLinLimit1)(_ref(btSliderConstraint)* _this, float lowerLimit) {
  1908. _unref(_this)->setLowerLinLimit(lowerLimit);
  1909. }
  1910. DEFINE_PRIM(_VOID, btSliderConstraint_setLowerLinLimit1, _IDL _F32);
  1911. HL_PRIM void HL_NAME(btSliderConstraint_setUpperLinLimit1)(_ref(btSliderConstraint)* _this, float upperLimit) {
  1912. _unref(_this)->setUpperLinLimit(upperLimit);
  1913. }
  1914. DEFINE_PRIM(_VOID, btSliderConstraint_setUpperLinLimit1, _IDL _F32);
  1915. HL_PRIM void HL_NAME(btSliderConstraint_setLowerAngLimit1)(_ref(btSliderConstraint)* _this, float lowerAngLimit) {
  1916. _unref(_this)->setLowerAngLimit(lowerAngLimit);
  1917. }
  1918. DEFINE_PRIM(_VOID, btSliderConstraint_setLowerAngLimit1, _IDL _F32);
  1919. HL_PRIM void HL_NAME(btSliderConstraint_setUpperAngLimit1)(_ref(btSliderConstraint)* _this, float upperAngLimit) {
  1920. _unref(_this)->setUpperAngLimit(upperAngLimit);
  1921. }
  1922. DEFINE_PRIM(_VOID, btSliderConstraint_setUpperAngLimit1, _IDL _F32);
  1923. HL_PRIM _ref(btFixedConstraint)* HL_NAME(btFixedConstraint_new4)(_ref(btRigidBody)* rbA, _ref(btRigidBody)* rbB, _ref(btTransform)* frameInA, _ref(btTransform)* frameInB) {
  1924. return alloc_ref((new btFixedConstraint(*_unref(rbA), *_unref(rbB), *_unref(frameInA), *_unref(frameInB))),btFixedConstraint);
  1925. }
  1926. DEFINE_PRIM(_IDL, btFixedConstraint_new4, _IDL _IDL _IDL _IDL);
  1927. HL_PRIM float HL_NAME(btDispatcherInfo_get_m_timeStep)( _ref(btDispatcherInfo)* _this ) {
  1928. return _unref(_this)->m_timeStep;
  1929. }
  1930. HL_PRIM float HL_NAME(btDispatcherInfo_set_m_timeStep)( _ref(btDispatcherInfo)* _this, float value ) {
  1931. _unref(_this)->m_timeStep = (value);
  1932. return value;
  1933. }
  1934. DEFINE_PRIM(_F32,btDispatcherInfo_get_m_timeStep,_IDL);
  1935. DEFINE_PRIM(_F32,btDispatcherInfo_set_m_timeStep,_IDL _F32);
  1936. HL_PRIM int HL_NAME(btDispatcherInfo_get_m_stepCount)( _ref(btDispatcherInfo)* _this ) {
  1937. return _unref(_this)->m_stepCount;
  1938. }
  1939. HL_PRIM int HL_NAME(btDispatcherInfo_set_m_stepCount)( _ref(btDispatcherInfo)* _this, int value ) {
  1940. _unref(_this)->m_stepCount = (value);
  1941. return value;
  1942. }
  1943. DEFINE_PRIM(_I32,btDispatcherInfo_get_m_stepCount,_IDL);
  1944. DEFINE_PRIM(_I32,btDispatcherInfo_set_m_stepCount,_IDL _I32);
  1945. HL_PRIM int HL_NAME(btDispatcherInfo_get_m_dispatchFunc)( _ref(btDispatcherInfo)* _this ) {
  1946. return _unref(_this)->m_dispatchFunc;
  1947. }
  1948. HL_PRIM int HL_NAME(btDispatcherInfo_set_m_dispatchFunc)( _ref(btDispatcherInfo)* _this, int value ) {
  1949. _unref(_this)->m_dispatchFunc = (value);
  1950. return value;
  1951. }
  1952. DEFINE_PRIM(_I32,btDispatcherInfo_get_m_dispatchFunc,_IDL);
  1953. DEFINE_PRIM(_I32,btDispatcherInfo_set_m_dispatchFunc,_IDL _I32);
  1954. HL_PRIM float HL_NAME(btDispatcherInfo_get_m_timeOfImpact)( _ref(btDispatcherInfo)* _this ) {
  1955. return _unref(_this)->m_timeOfImpact;
  1956. }
  1957. HL_PRIM float HL_NAME(btDispatcherInfo_set_m_timeOfImpact)( _ref(btDispatcherInfo)* _this, float value ) {
  1958. _unref(_this)->m_timeOfImpact = (value);
  1959. return value;
  1960. }
  1961. DEFINE_PRIM(_F32,btDispatcherInfo_get_m_timeOfImpact,_IDL);
  1962. DEFINE_PRIM(_F32,btDispatcherInfo_set_m_timeOfImpact,_IDL _F32);
  1963. HL_PRIM bool HL_NAME(btDispatcherInfo_get_m_useContinuous)( _ref(btDispatcherInfo)* _this ) {
  1964. return _unref(_this)->m_useContinuous;
  1965. }
  1966. HL_PRIM bool HL_NAME(btDispatcherInfo_set_m_useContinuous)( _ref(btDispatcherInfo)* _this, bool value ) {
  1967. _unref(_this)->m_useContinuous = (value);
  1968. return value;
  1969. }
  1970. DEFINE_PRIM(_BOOL,btDispatcherInfo_get_m_useContinuous,_IDL);
  1971. DEFINE_PRIM(_BOOL,btDispatcherInfo_set_m_useContinuous,_IDL _BOOL);
  1972. HL_PRIM bool HL_NAME(btDispatcherInfo_get_m_enableSatConvex)( _ref(btDispatcherInfo)* _this ) {
  1973. return _unref(_this)->m_enableSatConvex;
  1974. }
  1975. HL_PRIM bool HL_NAME(btDispatcherInfo_set_m_enableSatConvex)( _ref(btDispatcherInfo)* _this, bool value ) {
  1976. _unref(_this)->m_enableSatConvex = (value);
  1977. return value;
  1978. }
  1979. DEFINE_PRIM(_BOOL,btDispatcherInfo_get_m_enableSatConvex,_IDL);
  1980. DEFINE_PRIM(_BOOL,btDispatcherInfo_set_m_enableSatConvex,_IDL _BOOL);
  1981. HL_PRIM bool HL_NAME(btDispatcherInfo_get_m_enableSPU)( _ref(btDispatcherInfo)* _this ) {
  1982. return _unref(_this)->m_enableSPU;
  1983. }
  1984. HL_PRIM bool HL_NAME(btDispatcherInfo_set_m_enableSPU)( _ref(btDispatcherInfo)* _this, bool value ) {
  1985. _unref(_this)->m_enableSPU = (value);
  1986. return value;
  1987. }
  1988. DEFINE_PRIM(_BOOL,btDispatcherInfo_get_m_enableSPU,_IDL);
  1989. DEFINE_PRIM(_BOOL,btDispatcherInfo_set_m_enableSPU,_IDL _BOOL);
  1990. HL_PRIM bool HL_NAME(btDispatcherInfo_get_m_useEpa)( _ref(btDispatcherInfo)* _this ) {
  1991. return _unref(_this)->m_useEpa;
  1992. }
  1993. HL_PRIM bool HL_NAME(btDispatcherInfo_set_m_useEpa)( _ref(btDispatcherInfo)* _this, bool value ) {
  1994. _unref(_this)->m_useEpa = (value);
  1995. return value;
  1996. }
  1997. DEFINE_PRIM(_BOOL,btDispatcherInfo_get_m_useEpa,_IDL);
  1998. DEFINE_PRIM(_BOOL,btDispatcherInfo_set_m_useEpa,_IDL _BOOL);
  1999. HL_PRIM float HL_NAME(btDispatcherInfo_get_m_allowedCcdPenetration)( _ref(btDispatcherInfo)* _this ) {
  2000. return _unref(_this)->m_allowedCcdPenetration;
  2001. }
  2002. HL_PRIM float HL_NAME(btDispatcherInfo_set_m_allowedCcdPenetration)( _ref(btDispatcherInfo)* _this, float value ) {
  2003. _unref(_this)->m_allowedCcdPenetration = (value);
  2004. return value;
  2005. }
  2006. DEFINE_PRIM(_F32,btDispatcherInfo_get_m_allowedCcdPenetration,_IDL);
  2007. DEFINE_PRIM(_F32,btDispatcherInfo_set_m_allowedCcdPenetration,_IDL _F32);
  2008. HL_PRIM bool HL_NAME(btDispatcherInfo_get_m_useConvexConservativeDistanceUtil)( _ref(btDispatcherInfo)* _this ) {
  2009. return _unref(_this)->m_useConvexConservativeDistanceUtil;
  2010. }
  2011. HL_PRIM bool HL_NAME(btDispatcherInfo_set_m_useConvexConservativeDistanceUtil)( _ref(btDispatcherInfo)* _this, bool value ) {
  2012. _unref(_this)->m_useConvexConservativeDistanceUtil = (value);
  2013. return value;
  2014. }
  2015. DEFINE_PRIM(_BOOL,btDispatcherInfo_get_m_useConvexConservativeDistanceUtil,_IDL);
  2016. DEFINE_PRIM(_BOOL,btDispatcherInfo_set_m_useConvexConservativeDistanceUtil,_IDL _BOOL);
  2017. HL_PRIM float HL_NAME(btDispatcherInfo_get_m_convexConservativeDistanceThreshold)( _ref(btDispatcherInfo)* _this ) {
  2018. return _unref(_this)->m_convexConservativeDistanceThreshold;
  2019. }
  2020. HL_PRIM float HL_NAME(btDispatcherInfo_set_m_convexConservativeDistanceThreshold)( _ref(btDispatcherInfo)* _this, float value ) {
  2021. _unref(_this)->m_convexConservativeDistanceThreshold = (value);
  2022. return value;
  2023. }
  2024. DEFINE_PRIM(_F32,btDispatcherInfo_get_m_convexConservativeDistanceThreshold,_IDL);
  2025. DEFINE_PRIM(_F32,btDispatcherInfo_set_m_convexConservativeDistanceThreshold,_IDL _F32);
  2026. HL_PRIM _ref(btDispatcher)* HL_NAME(btCollisionWorld_getDispatcher0)(_ref(btCollisionWorld)* _this) {
  2027. return alloc_ref((_unref(_this)->getDispatcher()),btDispatcher);
  2028. }
  2029. DEFINE_PRIM(_IDL, btCollisionWorld_getDispatcher0, _IDL);
  2030. HL_PRIM void HL_NAME(btCollisionWorld_rayTest3)(_ref(btCollisionWorld)* _this, _ref(btVector3)* rayFromWorld, _ref(btVector3)* rayToWorld, _ref(btCollisionWorld::RayResultCallback)* resultCallback) {
  2031. _unref(_this)->rayTest(*_unref(rayFromWorld), *_unref(rayToWorld), *_unref(resultCallback));
  2032. }
  2033. DEFINE_PRIM(_VOID, btCollisionWorld_rayTest3, _IDL _IDL _IDL _IDL);
  2034. HL_PRIM _ref(btOverlappingPairCache)* HL_NAME(btCollisionWorld_getPairCache0)(_ref(btCollisionWorld)* _this) {
  2035. return alloc_ref((_unref(_this)->getPairCache()),btOverlappingPairCache);
  2036. }
  2037. DEFINE_PRIM(_IDL, btCollisionWorld_getPairCache0, _IDL);
  2038. HL_PRIM _ref(btDispatcherInfo)* HL_NAME(btCollisionWorld_getDispatchInfo0)(_ref(btCollisionWorld)* _this) {
  2039. return alloc_ref(new btDispatcherInfo(_unref(_this)->getDispatchInfo()),btDispatcherInfo);
  2040. }
  2041. DEFINE_PRIM(_IDL, btCollisionWorld_getDispatchInfo0, _IDL);
  2042. HL_PRIM void HL_NAME(btCollisionWorld_addCollisionObject3)(_ref(btCollisionWorld)* _this, _ref(btCollisionObject)* collisionObject, _OPT(short) collisionFilterGroup, _OPT(short) collisionFilterMask) {
  2043. if( !collisionFilterGroup )
  2044. _unref(_this)->addCollisionObject(_unref(collisionObject));
  2045. else
  2046. if( !collisionFilterMask )
  2047. _unref(_this)->addCollisionObject(_unref(collisionObject), _GET_OPT(collisionFilterGroup,ui16));
  2048. else
  2049. _unref(_this)->addCollisionObject(_unref(collisionObject), _GET_OPT(collisionFilterGroup,ui16), _GET_OPT(collisionFilterMask,ui16));
  2050. }
  2051. DEFINE_PRIM(_VOID, btCollisionWorld_addCollisionObject3, _IDL _IDL _NULL(_I16) _NULL(_I16));
  2052. HL_PRIM HL_CONST _ref(btBroadphaseInterface)* HL_NAME(btCollisionWorld_getBroadphase0)(_ref(btCollisionWorld)* _this) {
  2053. return alloc_ref_const((_unref(_this)->getBroadphase()),btBroadphaseInterface);
  2054. }
  2055. DEFINE_PRIM(_IDL, btCollisionWorld_getBroadphase0, _IDL);
  2056. HL_PRIM void HL_NAME(btCollisionWorld_convexSweepTest5)(_ref(btCollisionWorld)* _this, _ref(btConvexShape)* castShape, _ref(btTransform)* from, _ref(btTransform)* to, _ref(btCollisionWorld::ConvexResultCallback)* resultCallback, float allowedCcdPenetration) {
  2057. _unref(_this)->convexSweepTest(_unref(castShape), *_unref(from), *_unref(to), *_unref(resultCallback), allowedCcdPenetration);
  2058. }
  2059. DEFINE_PRIM(_VOID, btCollisionWorld_convexSweepTest5, _IDL _IDL _IDL _IDL _IDL _F32);
  2060. HL_PRIM void HL_NAME(btCollisionWorld_contactPairTest3)(_ref(btCollisionWorld)* _this, _ref(btCollisionObject)* colObjA, _ref(btCollisionObject)* colObjB, _ref(btCollisionWorld::ContactResultCallback)* resultCallback) {
  2061. _unref(_this)->contactPairTest(_unref(colObjA), _unref(colObjB), *_unref(resultCallback));
  2062. }
  2063. DEFINE_PRIM(_VOID, btCollisionWorld_contactPairTest3, _IDL _IDL _IDL _IDL);
  2064. HL_PRIM void HL_NAME(btCollisionWorld_contactTest2)(_ref(btCollisionWorld)* _this, _ref(btCollisionObject)* colObj, _ref(btCollisionWorld::ContactResultCallback)* resultCallback) {
  2065. _unref(_this)->contactTest(_unref(colObj), *_unref(resultCallback));
  2066. }
  2067. DEFINE_PRIM(_VOID, btCollisionWorld_contactTest2, _IDL _IDL _IDL);
  2068. HL_PRIM int HL_NAME(btContactSolverInfo_get_m_splitImpulse)( _ref(btContactSolverInfo)* _this ) {
  2069. return _unref(_this)->m_splitImpulse;
  2070. }
  2071. HL_PRIM int HL_NAME(btContactSolverInfo_set_m_splitImpulse)( _ref(btContactSolverInfo)* _this, int value ) {
  2072. _unref(_this)->m_splitImpulse = (value);
  2073. return value;
  2074. }
  2075. DEFINE_PRIM(_I32,btContactSolverInfo_get_m_splitImpulse,_IDL);
  2076. DEFINE_PRIM(_I32,btContactSolverInfo_set_m_splitImpulse,_IDL _I32);
  2077. HL_PRIM int HL_NAME(btContactSolverInfo_get_m_splitImpulsePenetrationThreshold)( _ref(btContactSolverInfo)* _this ) {
  2078. return _unref(_this)->m_splitImpulsePenetrationThreshold;
  2079. }
  2080. HL_PRIM int HL_NAME(btContactSolverInfo_set_m_splitImpulsePenetrationThreshold)( _ref(btContactSolverInfo)* _this, int value ) {
  2081. _unref(_this)->m_splitImpulsePenetrationThreshold = (value);
  2082. return value;
  2083. }
  2084. DEFINE_PRIM(_I32,btContactSolverInfo_get_m_splitImpulsePenetrationThreshold,_IDL);
  2085. DEFINE_PRIM(_I32,btContactSolverInfo_set_m_splitImpulsePenetrationThreshold,_IDL _I32);
  2086. HL_PRIM int HL_NAME(btContactSolverInfo_get_m_numIterations)( _ref(btContactSolverInfo)* _this ) {
  2087. return _unref(_this)->m_numIterations;
  2088. }
  2089. HL_PRIM int HL_NAME(btContactSolverInfo_set_m_numIterations)( _ref(btContactSolverInfo)* _this, int value ) {
  2090. _unref(_this)->m_numIterations = (value);
  2091. return value;
  2092. }
  2093. DEFINE_PRIM(_I32,btContactSolverInfo_get_m_numIterations,_IDL);
  2094. DEFINE_PRIM(_I32,btContactSolverInfo_set_m_numIterations,_IDL _I32);
  2095. HL_PRIM void HL_NAME(btDynamicsWorld_addAction1)(_ref(btDynamicsWorld)* _this, _ref(btActionInterface)* action) {
  2096. _unref(_this)->addAction(_unref(action));
  2097. }
  2098. DEFINE_PRIM(_VOID, btDynamicsWorld_addAction1, _IDL _IDL);
  2099. HL_PRIM void HL_NAME(btDynamicsWorld_removeAction1)(_ref(btDynamicsWorld)* _this, _ref(btActionInterface)* action) {
  2100. _unref(_this)->removeAction(_unref(action));
  2101. }
  2102. DEFINE_PRIM(_VOID, btDynamicsWorld_removeAction1, _IDL _IDL);
  2103. HL_PRIM _ref(btContactSolverInfo)* HL_NAME(btDynamicsWorld_getSolverInfo0)(_ref(btDynamicsWorld)* _this) {
  2104. return alloc_ref(new btContactSolverInfo(_unref(_this)->getSolverInfo()),btContactSolverInfo);
  2105. }
  2106. DEFINE_PRIM(_IDL, btDynamicsWorld_getSolverInfo0, _IDL);
  2107. HL_PRIM _ref(btDiscreteDynamicsWorld)* HL_NAME(btDiscreteDynamicsWorld_new4)(_ref(btDispatcher)* dispatcher, _ref(btBroadphaseInterface)* pairCache, _ref(btConstraintSolver)* constraintSolver, _ref(btCollisionConfiguration)* collisionConfiguration) {
  2108. return alloc_ref((new btDiscreteDynamicsWorld(_unref(dispatcher), _unref(pairCache), _unref(constraintSolver), _unref(collisionConfiguration))),btDiscreteDynamicsWorld);
  2109. }
  2110. DEFINE_PRIM(_IDL, btDiscreteDynamicsWorld_new4, _IDL _IDL _IDL _IDL);
  2111. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_setGravity1)(_ref(btDiscreteDynamicsWorld)* _this, _ref(btVector3)* gravity) {
  2112. _unref(_this)->setGravity(*_unref(gravity));
  2113. }
  2114. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_setGravity1, _IDL _IDL);
  2115. HL_PRIM _ref(btVector3)* HL_NAME(btDiscreteDynamicsWorld_getGravity0)(_ref(btDiscreteDynamicsWorld)* _this) {
  2116. return alloc_ref(new btVector3(_unref(_this)->getGravity()),btVector3);
  2117. }
  2118. DEFINE_PRIM(_IDL, btDiscreteDynamicsWorld_getGravity0, _IDL);
  2119. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_addRigidBody1)(_ref(btDiscreteDynamicsWorld)* _this, _ref(btRigidBody)* body) {
  2120. _unref(_this)->addRigidBody(_unref(body));
  2121. }
  2122. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_addRigidBody1, _IDL _IDL);
  2123. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_addRigidBody3)(_ref(btDiscreteDynamicsWorld)* _this, _ref(btRigidBody)* body, short group, short mask) {
  2124. _unref(_this)->addRigidBody(_unref(body), group, mask);
  2125. }
  2126. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_addRigidBody3, _IDL _IDL _I16 _I16);
  2127. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_removeRigidBody1)(_ref(btDiscreteDynamicsWorld)* _this, _ref(btRigidBody)* body) {
  2128. _unref(_this)->removeRigidBody(_unref(body));
  2129. }
  2130. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_removeRigidBody1, _IDL _IDL);
  2131. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_addConstraint2)(_ref(btDiscreteDynamicsWorld)* _this, _ref(btTypedConstraint)* constraint, _OPT(bool) disableCollisionsBetweenLinkedBodies) {
  2132. if( !disableCollisionsBetweenLinkedBodies )
  2133. _unref(_this)->addConstraint(_unref(constraint));
  2134. else
  2135. _unref(_this)->addConstraint(_unref(constraint), _GET_OPT(disableCollisionsBetweenLinkedBodies,b));
  2136. }
  2137. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_addConstraint2, _IDL _IDL _NULL(_BOOL));
  2138. HL_PRIM void HL_NAME(btDiscreteDynamicsWorld_removeConstraint1)(_ref(btDiscreteDynamicsWorld)* _this, _ref(btTypedConstraint)* constraint) {
  2139. _unref(_this)->removeConstraint(_unref(constraint));
  2140. }
  2141. DEFINE_PRIM(_VOID, btDiscreteDynamicsWorld_removeConstraint1, _IDL _IDL);
  2142. HL_PRIM int HL_NAME(btDiscreteDynamicsWorld_stepSimulation3)(_ref(btDiscreteDynamicsWorld)* _this, float timeStep, _OPT(int) maxSubSteps, _OPT(float) fixedTimeStep) {
  2143. if( !maxSubSteps )
  2144. return _unref(_this)->stepSimulation(timeStep);
  2145. else
  2146. if( !fixedTimeStep )
  2147. return _unref(_this)->stepSimulation(timeStep, _GET_OPT(maxSubSteps,i));
  2148. else
  2149. return _unref(_this)->stepSimulation(timeStep, _GET_OPT(maxSubSteps,i), _GET_OPT(fixedTimeStep,f));
  2150. }
  2151. DEFINE_PRIM(_I32, btDiscreteDynamicsWorld_stepSimulation3, _IDL _F32 _NULL(_I32) _NULL(_F32));
  2152. HL_PRIM _ref(btRaycastVehicle::btVehicleTuning)* HL_NAME(btVehicleTuning_new0)() {
  2153. return alloc_ref((new btRaycastVehicle::btVehicleTuning()),btVehicleTuning);
  2154. }
  2155. DEFINE_PRIM(_IDL, btVehicleTuning_new0,);
  2156. HL_PRIM float HL_NAME(btVehicleTuning_get_m_suspensionStiffness)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  2157. return _unref(_this)->m_suspensionStiffness;
  2158. }
  2159. HL_PRIM float HL_NAME(btVehicleTuning_set_m_suspensionStiffness)( _ref(btRaycastVehicle::btVehicleTuning)* _this, float value ) {
  2160. _unref(_this)->m_suspensionStiffness = (value);
  2161. return value;
  2162. }
  2163. DEFINE_PRIM(_F32,btVehicleTuning_get_m_suspensionStiffness,_IDL);
  2164. DEFINE_PRIM(_F32,btVehicleTuning_set_m_suspensionStiffness,_IDL _F32);
  2165. HL_PRIM float HL_NAME(btVehicleTuning_get_m_suspensionCompression)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  2166. return _unref(_this)->m_suspensionCompression;
  2167. }
  2168. HL_PRIM float HL_NAME(btVehicleTuning_set_m_suspensionCompression)( _ref(btRaycastVehicle::btVehicleTuning)* _this, float value ) {
  2169. _unref(_this)->m_suspensionCompression = (value);
  2170. return value;
  2171. }
  2172. DEFINE_PRIM(_F32,btVehicleTuning_get_m_suspensionCompression,_IDL);
  2173. DEFINE_PRIM(_F32,btVehicleTuning_set_m_suspensionCompression,_IDL _F32);
  2174. HL_PRIM float HL_NAME(btVehicleTuning_get_m_suspensionDamping)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  2175. return _unref(_this)->m_suspensionDamping;
  2176. }
  2177. HL_PRIM float HL_NAME(btVehicleTuning_set_m_suspensionDamping)( _ref(btRaycastVehicle::btVehicleTuning)* _this, float value ) {
  2178. _unref(_this)->m_suspensionDamping = (value);
  2179. return value;
  2180. }
  2181. DEFINE_PRIM(_F32,btVehicleTuning_get_m_suspensionDamping,_IDL);
  2182. DEFINE_PRIM(_F32,btVehicleTuning_set_m_suspensionDamping,_IDL _F32);
  2183. HL_PRIM float HL_NAME(btVehicleTuning_get_m_maxSuspensionTravelCm)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  2184. return _unref(_this)->m_maxSuspensionTravelCm;
  2185. }
  2186. HL_PRIM float HL_NAME(btVehicleTuning_set_m_maxSuspensionTravelCm)( _ref(btRaycastVehicle::btVehicleTuning)* _this, float value ) {
  2187. _unref(_this)->m_maxSuspensionTravelCm = (value);
  2188. return value;
  2189. }
  2190. DEFINE_PRIM(_F32,btVehicleTuning_get_m_maxSuspensionTravelCm,_IDL);
  2191. DEFINE_PRIM(_F32,btVehicleTuning_set_m_maxSuspensionTravelCm,_IDL _F32);
  2192. HL_PRIM float HL_NAME(btVehicleTuning_get_m_frictionSlip)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  2193. return _unref(_this)->m_frictionSlip;
  2194. }
  2195. HL_PRIM float HL_NAME(btVehicleTuning_set_m_frictionSlip)( _ref(btRaycastVehicle::btVehicleTuning)* _this, float value ) {
  2196. _unref(_this)->m_frictionSlip = (value);
  2197. return value;
  2198. }
  2199. DEFINE_PRIM(_F32,btVehicleTuning_get_m_frictionSlip,_IDL);
  2200. DEFINE_PRIM(_F32,btVehicleTuning_set_m_frictionSlip,_IDL _F32);
  2201. HL_PRIM float HL_NAME(btVehicleTuning_get_m_maxSuspensionForce)( _ref(btRaycastVehicle::btVehicleTuning)* _this ) {
  2202. return _unref(_this)->m_maxSuspensionForce;
  2203. }
  2204. HL_PRIM float HL_NAME(btVehicleTuning_set_m_maxSuspensionForce)( _ref(btRaycastVehicle::btVehicleTuning)* _this, float value ) {
  2205. _unref(_this)->m_maxSuspensionForce = (value);
  2206. return value;
  2207. }
  2208. DEFINE_PRIM(_F32,btVehicleTuning_get_m_maxSuspensionForce,_IDL);
  2209. DEFINE_PRIM(_F32,btVehicleTuning_set_m_maxSuspensionForce,_IDL _F32);
  2210. HL_PRIM _ref(btVector3)* HL_NAME(btVehicleRaycasterResult_get_m_hitPointInWorld)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this ) {
  2211. return alloc_ref(new btVector3(_unref(_this)->m_hitPointInWorld),btVector3);
  2212. }
  2213. HL_PRIM _ref(btVector3)* HL_NAME(btVehicleRaycasterResult_set_m_hitPointInWorld)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this, _ref(btVector3)* value ) {
  2214. _unref(_this)->m_hitPointInWorld = *_unref(value);
  2215. return value;
  2216. }
  2217. DEFINE_PRIM(_IDL,btVehicleRaycasterResult_get_m_hitPointInWorld,_IDL);
  2218. DEFINE_PRIM(_IDL,btVehicleRaycasterResult_set_m_hitPointInWorld,_IDL _IDL);
  2219. HL_PRIM _ref(btVector3)* HL_NAME(btVehicleRaycasterResult_get_m_hitNormalInWorld)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this ) {
  2220. return alloc_ref(new btVector3(_unref(_this)->m_hitNormalInWorld),btVector3);
  2221. }
  2222. HL_PRIM _ref(btVector3)* HL_NAME(btVehicleRaycasterResult_set_m_hitNormalInWorld)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this, _ref(btVector3)* value ) {
  2223. _unref(_this)->m_hitNormalInWorld = *_unref(value);
  2224. return value;
  2225. }
  2226. DEFINE_PRIM(_IDL,btVehicleRaycasterResult_get_m_hitNormalInWorld,_IDL);
  2227. DEFINE_PRIM(_IDL,btVehicleRaycasterResult_set_m_hitNormalInWorld,_IDL _IDL);
  2228. HL_PRIM float HL_NAME(btVehicleRaycasterResult_get_m_distFraction)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this ) {
  2229. return _unref(_this)->m_distFraction;
  2230. }
  2231. HL_PRIM float HL_NAME(btVehicleRaycasterResult_set_m_distFraction)( _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* _this, float value ) {
  2232. _unref(_this)->m_distFraction = (value);
  2233. return value;
  2234. }
  2235. DEFINE_PRIM(_F32,btVehicleRaycasterResult_get_m_distFraction,_IDL);
  2236. DEFINE_PRIM(_F32,btVehicleRaycasterResult_set_m_distFraction,_IDL _F32);
  2237. HL_PRIM void HL_NAME(btVehicleRaycaster_castRay3)(_ref(btVehicleRaycaster)* _this, _ref(btVector3)* from, _ref(btVector3)* to, _ref(btDefaultVehicleRaycaster::btVehicleRaycasterResult)* result) {
  2238. _unref(_this)->castRay(*_unref(from), *_unref(to), *_unref(result));
  2239. }
  2240. DEFINE_PRIM(_VOID, btVehicleRaycaster_castRay3, _IDL _IDL _IDL _IDL);
  2241. HL_PRIM _ref(btDefaultVehicleRaycaster)* HL_NAME(btDefaultVehicleRaycaster_new1)(_ref(btDynamicsWorld)* world) {
  2242. return alloc_ref((new btDefaultVehicleRaycaster(_unref(world))),btDefaultVehicleRaycaster);
  2243. }
  2244. DEFINE_PRIM(_IDL, btDefaultVehicleRaycaster_new1, _IDL);
  2245. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_get_m_contactNormalWS)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2246. return alloc_ref(new btVector3(_unref(_this)->m_contactNormalWS),btVector3);
  2247. }
  2248. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_set_m_contactNormalWS)( _ref(btWheelInfo::RaycastInfo)* _this, _ref(btVector3)* value ) {
  2249. _unref(_this)->m_contactNormalWS = *_unref(value);
  2250. return value;
  2251. }
  2252. DEFINE_PRIM(_IDL,RaycastInfo_get_m_contactNormalWS,_IDL);
  2253. DEFINE_PRIM(_IDL,RaycastInfo_set_m_contactNormalWS,_IDL _IDL);
  2254. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_get_m_contactPointWS)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2255. return alloc_ref(new btVector3(_unref(_this)->m_contactPointWS),btVector3);
  2256. }
  2257. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_set_m_contactPointWS)( _ref(btWheelInfo::RaycastInfo)* _this, _ref(btVector3)* value ) {
  2258. _unref(_this)->m_contactPointWS = *_unref(value);
  2259. return value;
  2260. }
  2261. DEFINE_PRIM(_IDL,RaycastInfo_get_m_contactPointWS,_IDL);
  2262. DEFINE_PRIM(_IDL,RaycastInfo_set_m_contactPointWS,_IDL _IDL);
  2263. HL_PRIM float HL_NAME(RaycastInfo_get_m_suspensionLength)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2264. return _unref(_this)->m_suspensionLength;
  2265. }
  2266. HL_PRIM float HL_NAME(RaycastInfo_set_m_suspensionLength)( _ref(btWheelInfo::RaycastInfo)* _this, float value ) {
  2267. _unref(_this)->m_suspensionLength = (value);
  2268. return value;
  2269. }
  2270. DEFINE_PRIM(_F32,RaycastInfo_get_m_suspensionLength,_IDL);
  2271. DEFINE_PRIM(_F32,RaycastInfo_set_m_suspensionLength,_IDL _F32);
  2272. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_get_m_hardPointWS)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2273. return alloc_ref(new btVector3(_unref(_this)->m_hardPointWS),btVector3);
  2274. }
  2275. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_set_m_hardPointWS)( _ref(btWheelInfo::RaycastInfo)* _this, _ref(btVector3)* value ) {
  2276. _unref(_this)->m_hardPointWS = *_unref(value);
  2277. return value;
  2278. }
  2279. DEFINE_PRIM(_IDL,RaycastInfo_get_m_hardPointWS,_IDL);
  2280. DEFINE_PRIM(_IDL,RaycastInfo_set_m_hardPointWS,_IDL _IDL);
  2281. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_get_m_wheelDirectionWS)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2282. return alloc_ref(new btVector3(_unref(_this)->m_wheelDirectionWS),btVector3);
  2283. }
  2284. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_set_m_wheelDirectionWS)( _ref(btWheelInfo::RaycastInfo)* _this, _ref(btVector3)* value ) {
  2285. _unref(_this)->m_wheelDirectionWS = *_unref(value);
  2286. return value;
  2287. }
  2288. DEFINE_PRIM(_IDL,RaycastInfo_get_m_wheelDirectionWS,_IDL);
  2289. DEFINE_PRIM(_IDL,RaycastInfo_set_m_wheelDirectionWS,_IDL _IDL);
  2290. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_get_m_wheelAxleWS)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2291. return alloc_ref(new btVector3(_unref(_this)->m_wheelAxleWS),btVector3);
  2292. }
  2293. HL_PRIM _ref(btVector3)* HL_NAME(RaycastInfo_set_m_wheelAxleWS)( _ref(btWheelInfo::RaycastInfo)* _this, _ref(btVector3)* value ) {
  2294. _unref(_this)->m_wheelAxleWS = *_unref(value);
  2295. return value;
  2296. }
  2297. DEFINE_PRIM(_IDL,RaycastInfo_get_m_wheelAxleWS,_IDL);
  2298. DEFINE_PRIM(_IDL,RaycastInfo_set_m_wheelAxleWS,_IDL _IDL);
  2299. HL_PRIM bool HL_NAME(RaycastInfo_get_m_isInContact)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2300. return _unref(_this)->m_isInContact;
  2301. }
  2302. HL_PRIM bool HL_NAME(RaycastInfo_set_m_isInContact)( _ref(btWheelInfo::RaycastInfo)* _this, bool value ) {
  2303. _unref(_this)->m_isInContact = (value);
  2304. return value;
  2305. }
  2306. DEFINE_PRIM(_BOOL,RaycastInfo_get_m_isInContact,_IDL);
  2307. DEFINE_PRIM(_BOOL,RaycastInfo_set_m_isInContact,_IDL _BOOL);
  2308. HL_PRIM void* HL_NAME(RaycastInfo_get_m_groundObject)( _ref(btWheelInfo::RaycastInfo)* _this ) {
  2309. return _unref(_this)->m_groundObject;
  2310. }
  2311. HL_PRIM void* HL_NAME(RaycastInfo_set_m_groundObject)( _ref(btWheelInfo::RaycastInfo)* _this, void* value ) {
  2312. _unref(_this)->m_groundObject = (value);
  2313. return value;
  2314. }
  2315. DEFINE_PRIM(_BYTES,RaycastInfo_get_m_groundObject,_IDL);
  2316. DEFINE_PRIM(_BYTES,RaycastInfo_set_m_groundObject,_IDL _BYTES);
  2317. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfoConstructionInfo_get_m_chassisConnectionCS)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2318. return alloc_ref(new btVector3(_unref(_this)->m_chassisConnectionCS),btVector3);
  2319. }
  2320. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfoConstructionInfo_set_m_chassisConnectionCS)( _ref(btWheelInfoConstructionInfo)* _this, _ref(btVector3)* value ) {
  2321. _unref(_this)->m_chassisConnectionCS = *_unref(value);
  2322. return value;
  2323. }
  2324. DEFINE_PRIM(_IDL,btWheelInfoConstructionInfo_get_m_chassisConnectionCS,_IDL);
  2325. DEFINE_PRIM(_IDL,btWheelInfoConstructionInfo_set_m_chassisConnectionCS,_IDL _IDL);
  2326. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfoConstructionInfo_get_m_wheelDirectionCS)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2327. return alloc_ref(new btVector3(_unref(_this)->m_wheelDirectionCS),btVector3);
  2328. }
  2329. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfoConstructionInfo_set_m_wheelDirectionCS)( _ref(btWheelInfoConstructionInfo)* _this, _ref(btVector3)* value ) {
  2330. _unref(_this)->m_wheelDirectionCS = *_unref(value);
  2331. return value;
  2332. }
  2333. DEFINE_PRIM(_IDL,btWheelInfoConstructionInfo_get_m_wheelDirectionCS,_IDL);
  2334. DEFINE_PRIM(_IDL,btWheelInfoConstructionInfo_set_m_wheelDirectionCS,_IDL _IDL);
  2335. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfoConstructionInfo_get_m_wheelAxleCS)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2336. return alloc_ref(new btVector3(_unref(_this)->m_wheelAxleCS),btVector3);
  2337. }
  2338. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfoConstructionInfo_set_m_wheelAxleCS)( _ref(btWheelInfoConstructionInfo)* _this, _ref(btVector3)* value ) {
  2339. _unref(_this)->m_wheelAxleCS = *_unref(value);
  2340. return value;
  2341. }
  2342. DEFINE_PRIM(_IDL,btWheelInfoConstructionInfo_get_m_wheelAxleCS,_IDL);
  2343. DEFINE_PRIM(_IDL,btWheelInfoConstructionInfo_set_m_wheelAxleCS,_IDL _IDL);
  2344. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_suspensionRestLength)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2345. return _unref(_this)->m_suspensionRestLength;
  2346. }
  2347. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_suspensionRestLength)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2348. _unref(_this)->m_suspensionRestLength = (value);
  2349. return value;
  2350. }
  2351. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_suspensionRestLength,_IDL);
  2352. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_suspensionRestLength,_IDL _F32);
  2353. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_maxSuspensionTravelCm)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2354. return _unref(_this)->m_maxSuspensionTravelCm;
  2355. }
  2356. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_maxSuspensionTravelCm)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2357. _unref(_this)->m_maxSuspensionTravelCm = (value);
  2358. return value;
  2359. }
  2360. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_maxSuspensionTravelCm,_IDL);
  2361. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_maxSuspensionTravelCm,_IDL _F32);
  2362. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_wheelRadius)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2363. return _unref(_this)->m_wheelRadius;
  2364. }
  2365. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_wheelRadius)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2366. _unref(_this)->m_wheelRadius = (value);
  2367. return value;
  2368. }
  2369. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_wheelRadius,_IDL);
  2370. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_wheelRadius,_IDL _F32);
  2371. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_suspensionStiffness)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2372. return _unref(_this)->m_suspensionStiffness;
  2373. }
  2374. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_suspensionStiffness)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2375. _unref(_this)->m_suspensionStiffness = (value);
  2376. return value;
  2377. }
  2378. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_suspensionStiffness,_IDL);
  2379. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_suspensionStiffness,_IDL _F32);
  2380. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_wheelsDampingCompression)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2381. return _unref(_this)->m_wheelsDampingCompression;
  2382. }
  2383. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_wheelsDampingCompression)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2384. _unref(_this)->m_wheelsDampingCompression = (value);
  2385. return value;
  2386. }
  2387. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_wheelsDampingCompression,_IDL);
  2388. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_wheelsDampingCompression,_IDL _F32);
  2389. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_wheelsDampingRelaxation)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2390. return _unref(_this)->m_wheelsDampingRelaxation;
  2391. }
  2392. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_wheelsDampingRelaxation)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2393. _unref(_this)->m_wheelsDampingRelaxation = (value);
  2394. return value;
  2395. }
  2396. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_wheelsDampingRelaxation,_IDL);
  2397. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_wheelsDampingRelaxation,_IDL _F32);
  2398. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_frictionSlip)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2399. return _unref(_this)->m_frictionSlip;
  2400. }
  2401. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_frictionSlip)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2402. _unref(_this)->m_frictionSlip = (value);
  2403. return value;
  2404. }
  2405. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_frictionSlip,_IDL);
  2406. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_frictionSlip,_IDL _F32);
  2407. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_get_m_maxSuspensionForce)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2408. return _unref(_this)->m_maxSuspensionForce;
  2409. }
  2410. HL_PRIM float HL_NAME(btWheelInfoConstructionInfo_set_m_maxSuspensionForce)( _ref(btWheelInfoConstructionInfo)* _this, float value ) {
  2411. _unref(_this)->m_maxSuspensionForce = (value);
  2412. return value;
  2413. }
  2414. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_get_m_maxSuspensionForce,_IDL);
  2415. DEFINE_PRIM(_F32,btWheelInfoConstructionInfo_set_m_maxSuspensionForce,_IDL _F32);
  2416. HL_PRIM bool HL_NAME(btWheelInfoConstructionInfo_get_m_bIsFrontWheel)( _ref(btWheelInfoConstructionInfo)* _this ) {
  2417. return _unref(_this)->m_bIsFrontWheel;
  2418. }
  2419. HL_PRIM bool HL_NAME(btWheelInfoConstructionInfo_set_m_bIsFrontWheel)( _ref(btWheelInfoConstructionInfo)* _this, bool value ) {
  2420. _unref(_this)->m_bIsFrontWheel = (value);
  2421. return value;
  2422. }
  2423. DEFINE_PRIM(_BOOL,btWheelInfoConstructionInfo_get_m_bIsFrontWheel,_IDL);
  2424. DEFINE_PRIM(_BOOL,btWheelInfoConstructionInfo_set_m_bIsFrontWheel,_IDL _BOOL);
  2425. HL_PRIM float HL_NAME(btWheelInfo_get_m_suspensionStiffness)( _ref(btWheelInfo)* _this ) {
  2426. return _unref(_this)->m_suspensionStiffness;
  2427. }
  2428. HL_PRIM float HL_NAME(btWheelInfo_set_m_suspensionStiffness)( _ref(btWheelInfo)* _this, float value ) {
  2429. _unref(_this)->m_suspensionStiffness = (value);
  2430. return value;
  2431. }
  2432. DEFINE_PRIM(_F32,btWheelInfo_get_m_suspensionStiffness,_IDL);
  2433. DEFINE_PRIM(_F32,btWheelInfo_set_m_suspensionStiffness,_IDL _F32);
  2434. HL_PRIM float HL_NAME(btWheelInfo_get_m_frictionSlip)( _ref(btWheelInfo)* _this ) {
  2435. return _unref(_this)->m_frictionSlip;
  2436. }
  2437. HL_PRIM float HL_NAME(btWheelInfo_set_m_frictionSlip)( _ref(btWheelInfo)* _this, float value ) {
  2438. _unref(_this)->m_frictionSlip = (value);
  2439. return value;
  2440. }
  2441. DEFINE_PRIM(_F32,btWheelInfo_get_m_frictionSlip,_IDL);
  2442. DEFINE_PRIM(_F32,btWheelInfo_set_m_frictionSlip,_IDL _F32);
  2443. HL_PRIM float HL_NAME(btWheelInfo_get_m_engineForce)( _ref(btWheelInfo)* _this ) {
  2444. return _unref(_this)->m_engineForce;
  2445. }
  2446. HL_PRIM float HL_NAME(btWheelInfo_set_m_engineForce)( _ref(btWheelInfo)* _this, float value ) {
  2447. _unref(_this)->m_engineForce = (value);
  2448. return value;
  2449. }
  2450. DEFINE_PRIM(_F32,btWheelInfo_get_m_engineForce,_IDL);
  2451. DEFINE_PRIM(_F32,btWheelInfo_set_m_engineForce,_IDL _F32);
  2452. HL_PRIM float HL_NAME(btWheelInfo_get_m_rollInfluence)( _ref(btWheelInfo)* _this ) {
  2453. return _unref(_this)->m_rollInfluence;
  2454. }
  2455. HL_PRIM float HL_NAME(btWheelInfo_set_m_rollInfluence)( _ref(btWheelInfo)* _this, float value ) {
  2456. _unref(_this)->m_rollInfluence = (value);
  2457. return value;
  2458. }
  2459. DEFINE_PRIM(_F32,btWheelInfo_get_m_rollInfluence,_IDL);
  2460. DEFINE_PRIM(_F32,btWheelInfo_set_m_rollInfluence,_IDL _F32);
  2461. HL_PRIM float HL_NAME(btWheelInfo_get_m_suspensionRestLength1)( _ref(btWheelInfo)* _this ) {
  2462. return _unref(_this)->m_suspensionRestLength1;
  2463. }
  2464. HL_PRIM float HL_NAME(btWheelInfo_set_m_suspensionRestLength1)( _ref(btWheelInfo)* _this, float value ) {
  2465. _unref(_this)->m_suspensionRestLength1 = (value);
  2466. return value;
  2467. }
  2468. DEFINE_PRIM(_F32,btWheelInfo_get_m_suspensionRestLength1,_IDL);
  2469. DEFINE_PRIM(_F32,btWheelInfo_set_m_suspensionRestLength1,_IDL _F32);
  2470. HL_PRIM float HL_NAME(btWheelInfo_get_m_wheelsRadius)( _ref(btWheelInfo)* _this ) {
  2471. return _unref(_this)->m_wheelsRadius;
  2472. }
  2473. HL_PRIM float HL_NAME(btWheelInfo_set_m_wheelsRadius)( _ref(btWheelInfo)* _this, float value ) {
  2474. _unref(_this)->m_wheelsRadius = (value);
  2475. return value;
  2476. }
  2477. DEFINE_PRIM(_F32,btWheelInfo_get_m_wheelsRadius,_IDL);
  2478. DEFINE_PRIM(_F32,btWheelInfo_set_m_wheelsRadius,_IDL _F32);
  2479. HL_PRIM float HL_NAME(btWheelInfo_get_m_wheelsDampingCompression)( _ref(btWheelInfo)* _this ) {
  2480. return _unref(_this)->m_wheelsDampingCompression;
  2481. }
  2482. HL_PRIM float HL_NAME(btWheelInfo_set_m_wheelsDampingCompression)( _ref(btWheelInfo)* _this, float value ) {
  2483. _unref(_this)->m_wheelsDampingCompression = (value);
  2484. return value;
  2485. }
  2486. DEFINE_PRIM(_F32,btWheelInfo_get_m_wheelsDampingCompression,_IDL);
  2487. DEFINE_PRIM(_F32,btWheelInfo_set_m_wheelsDampingCompression,_IDL _F32);
  2488. HL_PRIM float HL_NAME(btWheelInfo_get_m_wheelsDampingRelaxation)( _ref(btWheelInfo)* _this ) {
  2489. return _unref(_this)->m_wheelsDampingRelaxation;
  2490. }
  2491. HL_PRIM float HL_NAME(btWheelInfo_set_m_wheelsDampingRelaxation)( _ref(btWheelInfo)* _this, float value ) {
  2492. _unref(_this)->m_wheelsDampingRelaxation = (value);
  2493. return value;
  2494. }
  2495. DEFINE_PRIM(_F32,btWheelInfo_get_m_wheelsDampingRelaxation,_IDL);
  2496. DEFINE_PRIM(_F32,btWheelInfo_set_m_wheelsDampingRelaxation,_IDL _F32);
  2497. HL_PRIM float HL_NAME(btWheelInfo_get_m_steering)( _ref(btWheelInfo)* _this ) {
  2498. return _unref(_this)->m_steering;
  2499. }
  2500. HL_PRIM float HL_NAME(btWheelInfo_set_m_steering)( _ref(btWheelInfo)* _this, float value ) {
  2501. _unref(_this)->m_steering = (value);
  2502. return value;
  2503. }
  2504. DEFINE_PRIM(_F32,btWheelInfo_get_m_steering,_IDL);
  2505. DEFINE_PRIM(_F32,btWheelInfo_set_m_steering,_IDL _F32);
  2506. HL_PRIM float HL_NAME(btWheelInfo_get_m_maxSuspensionForce)( _ref(btWheelInfo)* _this ) {
  2507. return _unref(_this)->m_maxSuspensionForce;
  2508. }
  2509. HL_PRIM float HL_NAME(btWheelInfo_set_m_maxSuspensionForce)( _ref(btWheelInfo)* _this, float value ) {
  2510. _unref(_this)->m_maxSuspensionForce = (value);
  2511. return value;
  2512. }
  2513. DEFINE_PRIM(_F32,btWheelInfo_get_m_maxSuspensionForce,_IDL);
  2514. DEFINE_PRIM(_F32,btWheelInfo_set_m_maxSuspensionForce,_IDL _F32);
  2515. HL_PRIM float HL_NAME(btWheelInfo_get_m_maxSuspensionTravelCm)( _ref(btWheelInfo)* _this ) {
  2516. return _unref(_this)->m_maxSuspensionTravelCm;
  2517. }
  2518. HL_PRIM float HL_NAME(btWheelInfo_set_m_maxSuspensionTravelCm)( _ref(btWheelInfo)* _this, float value ) {
  2519. _unref(_this)->m_maxSuspensionTravelCm = (value);
  2520. return value;
  2521. }
  2522. DEFINE_PRIM(_F32,btWheelInfo_get_m_maxSuspensionTravelCm,_IDL);
  2523. DEFINE_PRIM(_F32,btWheelInfo_set_m_maxSuspensionTravelCm,_IDL _F32);
  2524. HL_PRIM float HL_NAME(btWheelInfo_get_m_wheelsSuspensionForce)( _ref(btWheelInfo)* _this ) {
  2525. return _unref(_this)->m_wheelsSuspensionForce;
  2526. }
  2527. HL_PRIM float HL_NAME(btWheelInfo_set_m_wheelsSuspensionForce)( _ref(btWheelInfo)* _this, float value ) {
  2528. _unref(_this)->m_wheelsSuspensionForce = (value);
  2529. return value;
  2530. }
  2531. DEFINE_PRIM(_F32,btWheelInfo_get_m_wheelsSuspensionForce,_IDL);
  2532. DEFINE_PRIM(_F32,btWheelInfo_set_m_wheelsSuspensionForce,_IDL _F32);
  2533. HL_PRIM bool HL_NAME(btWheelInfo_get_m_bIsFrontWheel)( _ref(btWheelInfo)* _this ) {
  2534. return _unref(_this)->m_bIsFrontWheel;
  2535. }
  2536. HL_PRIM bool HL_NAME(btWheelInfo_set_m_bIsFrontWheel)( _ref(btWheelInfo)* _this, bool value ) {
  2537. _unref(_this)->m_bIsFrontWheel = (value);
  2538. return value;
  2539. }
  2540. DEFINE_PRIM(_BOOL,btWheelInfo_get_m_bIsFrontWheel,_IDL);
  2541. DEFINE_PRIM(_BOOL,btWheelInfo_set_m_bIsFrontWheel,_IDL _BOOL);
  2542. HL_PRIM _ref(btWheelInfo::RaycastInfo)* HL_NAME(btWheelInfo_get_m_raycastInfo)( _ref(btWheelInfo)* _this ) {
  2543. return alloc_ref(new btWheelInfo::RaycastInfo(_unref(_this)->m_raycastInfo),RaycastInfo);
  2544. }
  2545. HL_PRIM _ref(btWheelInfo::RaycastInfo)* HL_NAME(btWheelInfo_set_m_raycastInfo)( _ref(btWheelInfo)* _this, _ref(btWheelInfo::RaycastInfo)* value ) {
  2546. _unref(_this)->m_raycastInfo = *_unref(value);
  2547. return value;
  2548. }
  2549. DEFINE_PRIM(_IDL,btWheelInfo_get_m_raycastInfo,_IDL);
  2550. DEFINE_PRIM(_IDL,btWheelInfo_set_m_raycastInfo,_IDL _IDL);
  2551. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfo_get_m_chassisConnectionPointCS)( _ref(btWheelInfo)* _this ) {
  2552. return alloc_ref(new btVector3(_unref(_this)->m_chassisConnectionPointCS),btVector3);
  2553. }
  2554. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfo_set_m_chassisConnectionPointCS)( _ref(btWheelInfo)* _this, _ref(btVector3)* value ) {
  2555. _unref(_this)->m_chassisConnectionPointCS = *_unref(value);
  2556. return value;
  2557. }
  2558. DEFINE_PRIM(_IDL,btWheelInfo_get_m_chassisConnectionPointCS,_IDL);
  2559. DEFINE_PRIM(_IDL,btWheelInfo_set_m_chassisConnectionPointCS,_IDL _IDL);
  2560. HL_PRIM _ref(btWheelInfo)* HL_NAME(btWheelInfo_new1)(_ref(btWheelInfoConstructionInfo)* ci) {
  2561. return alloc_ref((new btWheelInfo(*_unref(ci))),btWheelInfo);
  2562. }
  2563. DEFINE_PRIM(_IDL, btWheelInfo_new1, _IDL);
  2564. HL_PRIM float HL_NAME(btWheelInfo_getSuspensionRestLength0)(_ref(btWheelInfo)* _this) {
  2565. return _unref(_this)->getSuspensionRestLength();
  2566. }
  2567. DEFINE_PRIM(_F32, btWheelInfo_getSuspensionRestLength0, _IDL);
  2568. HL_PRIM void HL_NAME(btWheelInfo_updateWheel2)(_ref(btWheelInfo)* _this, _ref(btRigidBody)* chassis, _ref(btWheelInfo::RaycastInfo)* raycastInfo) {
  2569. _unref(_this)->updateWheel(*_unref(chassis), *_unref(raycastInfo));
  2570. }
  2571. DEFINE_PRIM(_VOID, btWheelInfo_updateWheel2, _IDL _IDL _IDL);
  2572. HL_PRIM _ref(btTransform)* HL_NAME(btWheelInfo_get_m_worldTransform)( _ref(btWheelInfo)* _this ) {
  2573. return alloc_ref(new btTransform(_unref(_this)->m_worldTransform),btTransform);
  2574. }
  2575. HL_PRIM _ref(btTransform)* HL_NAME(btWheelInfo_set_m_worldTransform)( _ref(btWheelInfo)* _this, _ref(btTransform)* value ) {
  2576. _unref(_this)->m_worldTransform = *_unref(value);
  2577. return value;
  2578. }
  2579. DEFINE_PRIM(_IDL,btWheelInfo_get_m_worldTransform,_IDL);
  2580. DEFINE_PRIM(_IDL,btWheelInfo_set_m_worldTransform,_IDL _IDL);
  2581. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfo_get_m_wheelDirectionCS)( _ref(btWheelInfo)* _this ) {
  2582. return alloc_ref(new btVector3(_unref(_this)->m_wheelDirectionCS),btVector3);
  2583. }
  2584. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfo_set_m_wheelDirectionCS)( _ref(btWheelInfo)* _this, _ref(btVector3)* value ) {
  2585. _unref(_this)->m_wheelDirectionCS = *_unref(value);
  2586. return value;
  2587. }
  2588. DEFINE_PRIM(_IDL,btWheelInfo_get_m_wheelDirectionCS,_IDL);
  2589. DEFINE_PRIM(_IDL,btWheelInfo_set_m_wheelDirectionCS,_IDL _IDL);
  2590. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfo_get_m_wheelAxleCS)( _ref(btWheelInfo)* _this ) {
  2591. return alloc_ref(new btVector3(_unref(_this)->m_wheelAxleCS),btVector3);
  2592. }
  2593. HL_PRIM _ref(btVector3)* HL_NAME(btWheelInfo_set_m_wheelAxleCS)( _ref(btWheelInfo)* _this, _ref(btVector3)* value ) {
  2594. _unref(_this)->m_wheelAxleCS = *_unref(value);
  2595. return value;
  2596. }
  2597. DEFINE_PRIM(_IDL,btWheelInfo_get_m_wheelAxleCS,_IDL);
  2598. DEFINE_PRIM(_IDL,btWheelInfo_set_m_wheelAxleCS,_IDL _IDL);
  2599. HL_PRIM float HL_NAME(btWheelInfo_get_m_rotation)( _ref(btWheelInfo)* _this ) {
  2600. return _unref(_this)->m_rotation;
  2601. }
  2602. HL_PRIM float HL_NAME(btWheelInfo_set_m_rotation)( _ref(btWheelInfo)* _this, float value ) {
  2603. _unref(_this)->m_rotation = (value);
  2604. return value;
  2605. }
  2606. DEFINE_PRIM(_F32,btWheelInfo_get_m_rotation,_IDL);
  2607. DEFINE_PRIM(_F32,btWheelInfo_set_m_rotation,_IDL _F32);
  2608. HL_PRIM float HL_NAME(btWheelInfo_get_m_deltaRotation)( _ref(btWheelInfo)* _this ) {
  2609. return _unref(_this)->m_deltaRotation;
  2610. }
  2611. HL_PRIM float HL_NAME(btWheelInfo_set_m_deltaRotation)( _ref(btWheelInfo)* _this, float value ) {
  2612. _unref(_this)->m_deltaRotation = (value);
  2613. return value;
  2614. }
  2615. DEFINE_PRIM(_F32,btWheelInfo_get_m_deltaRotation,_IDL);
  2616. DEFINE_PRIM(_F32,btWheelInfo_set_m_deltaRotation,_IDL _F32);
  2617. HL_PRIM float HL_NAME(btWheelInfo_get_m_brake)( _ref(btWheelInfo)* _this ) {
  2618. return _unref(_this)->m_brake;
  2619. }
  2620. HL_PRIM float HL_NAME(btWheelInfo_set_m_brake)( _ref(btWheelInfo)* _this, float value ) {
  2621. _unref(_this)->m_brake = (value);
  2622. return value;
  2623. }
  2624. DEFINE_PRIM(_F32,btWheelInfo_get_m_brake,_IDL);
  2625. DEFINE_PRIM(_F32,btWheelInfo_set_m_brake,_IDL _F32);
  2626. HL_PRIM float HL_NAME(btWheelInfo_get_m_clippedInvContactDotSuspension)( _ref(btWheelInfo)* _this ) {
  2627. return _unref(_this)->m_clippedInvContactDotSuspension;
  2628. }
  2629. HL_PRIM float HL_NAME(btWheelInfo_set_m_clippedInvContactDotSuspension)( _ref(btWheelInfo)* _this, float value ) {
  2630. _unref(_this)->m_clippedInvContactDotSuspension = (value);
  2631. return value;
  2632. }
  2633. DEFINE_PRIM(_F32,btWheelInfo_get_m_clippedInvContactDotSuspension,_IDL);
  2634. DEFINE_PRIM(_F32,btWheelInfo_set_m_clippedInvContactDotSuspension,_IDL _F32);
  2635. HL_PRIM float HL_NAME(btWheelInfo_get_m_suspensionRelativeVelocity)( _ref(btWheelInfo)* _this ) {
  2636. return _unref(_this)->m_suspensionRelativeVelocity;
  2637. }
  2638. HL_PRIM float HL_NAME(btWheelInfo_set_m_suspensionRelativeVelocity)( _ref(btWheelInfo)* _this, float value ) {
  2639. _unref(_this)->m_suspensionRelativeVelocity = (value);
  2640. return value;
  2641. }
  2642. DEFINE_PRIM(_F32,btWheelInfo_get_m_suspensionRelativeVelocity,_IDL);
  2643. DEFINE_PRIM(_F32,btWheelInfo_set_m_suspensionRelativeVelocity,_IDL _F32);
  2644. HL_PRIM float HL_NAME(btWheelInfo_get_m_skidInfo)( _ref(btWheelInfo)* _this ) {
  2645. return _unref(_this)->m_skidInfo;
  2646. }
  2647. HL_PRIM float HL_NAME(btWheelInfo_set_m_skidInfo)( _ref(btWheelInfo)* _this, float value ) {
  2648. _unref(_this)->m_skidInfo = (value);
  2649. return value;
  2650. }
  2651. DEFINE_PRIM(_F32,btWheelInfo_get_m_skidInfo,_IDL);
  2652. DEFINE_PRIM(_F32,btWheelInfo_set_m_skidInfo,_IDL _F32);
  2653. HL_PRIM void HL_NAME(btActionInterface_updateAction2)(_ref(btActionInterface)* _this, _ref(btCollisionWorld)* collisionWorld, float deltaTimeStep) {
  2654. _unref(_this)->updateAction(_unref(collisionWorld), deltaTimeStep);
  2655. }
  2656. DEFINE_PRIM(_VOID, btActionInterface_updateAction2, _IDL _IDL _F32);
  2657. HL_PRIM _ref(btKinematicCharacterController)* HL_NAME(btKinematicCharacterController_new4)(_ref(btPairCachingGhostObject)* ghostObject, _ref(btConvexShape)* convexShape, float stepHeight, _ref(btVector3)* upAxis) {
  2658. if( !upAxis )
  2659. return alloc_ref((new btKinematicCharacterController(_unref(ghostObject), _unref(convexShape), stepHeight)),btKinematicCharacterController);
  2660. else
  2661. return alloc_ref((new btKinematicCharacterController(_unref(ghostObject), _unref(convexShape), stepHeight, *_unref(upAxis))),btKinematicCharacterController);
  2662. }
  2663. DEFINE_PRIM(_IDL, btKinematicCharacterController_new4, _IDL _IDL _F32 _IDL);
  2664. HL_PRIM void HL_NAME(btKinematicCharacterController_setUp1)(_ref(btKinematicCharacterController)* _this, _ref(btVector3)* axis) {
  2665. _unref(_this)->setUp(*_unref(axis));
  2666. }
  2667. DEFINE_PRIM(_VOID, btKinematicCharacterController_setUp1, _IDL _IDL);
  2668. HL_PRIM void HL_NAME(btKinematicCharacterController_setWalkDirection1)(_ref(btKinematicCharacterController)* _this, _ref(btVector3)* walkDirection) {
  2669. _unref(_this)->setWalkDirection(*_unref(walkDirection));
  2670. }
  2671. DEFINE_PRIM(_VOID, btKinematicCharacterController_setWalkDirection1, _IDL _IDL);
  2672. HL_PRIM void HL_NAME(btKinematicCharacterController_setVelocityForTimeInterval2)(_ref(btKinematicCharacterController)* _this, _ref(btVector3)* velocity, float timeInterval) {
  2673. _unref(_this)->setVelocityForTimeInterval(*_unref(velocity), timeInterval);
  2674. }
  2675. DEFINE_PRIM(_VOID, btKinematicCharacterController_setVelocityForTimeInterval2, _IDL _IDL _F32);
  2676. HL_PRIM void HL_NAME(btKinematicCharacterController_warp1)(_ref(btKinematicCharacterController)* _this, _ref(btVector3)* origin) {
  2677. _unref(_this)->warp(*_unref(origin));
  2678. }
  2679. DEFINE_PRIM(_VOID, btKinematicCharacterController_warp1, _IDL _IDL);
  2680. HL_PRIM void HL_NAME(btKinematicCharacterController_preStep1)(_ref(btKinematicCharacterController)* _this, _ref(btCollisionWorld)* collisionWorld) {
  2681. _unref(_this)->preStep(_unref(collisionWorld));
  2682. }
  2683. DEFINE_PRIM(_VOID, btKinematicCharacterController_preStep1, _IDL _IDL);
  2684. HL_PRIM void HL_NAME(btKinematicCharacterController_playerStep2)(_ref(btKinematicCharacterController)* _this, _ref(btCollisionWorld)* collisionWorld, float dt) {
  2685. _unref(_this)->playerStep(_unref(collisionWorld), dt);
  2686. }
  2687. DEFINE_PRIM(_VOID, btKinematicCharacterController_playerStep2, _IDL _IDL _F32);
  2688. HL_PRIM void HL_NAME(btKinematicCharacterController_setFallSpeed1)(_ref(btKinematicCharacterController)* _this, float fallSpeed) {
  2689. _unref(_this)->setFallSpeed(fallSpeed);
  2690. }
  2691. DEFINE_PRIM(_VOID, btKinematicCharacterController_setFallSpeed1, _IDL _F32);
  2692. HL_PRIM void HL_NAME(btKinematicCharacterController_setJumpSpeed1)(_ref(btKinematicCharacterController)* _this, float jumpSpeed) {
  2693. _unref(_this)->setJumpSpeed(jumpSpeed);
  2694. }
  2695. DEFINE_PRIM(_VOID, btKinematicCharacterController_setJumpSpeed1, _IDL _F32);
  2696. HL_PRIM void HL_NAME(btKinematicCharacterController_setMaxJumpHeight1)(_ref(btKinematicCharacterController)* _this, float maxJumpHeight) {
  2697. _unref(_this)->setMaxJumpHeight(maxJumpHeight);
  2698. }
  2699. DEFINE_PRIM(_VOID, btKinematicCharacterController_setMaxJumpHeight1, _IDL _F32);
  2700. HL_PRIM bool HL_NAME(btKinematicCharacterController_canJump0)(_ref(btKinematicCharacterController)* _this) {
  2701. return _unref(_this)->canJump();
  2702. }
  2703. DEFINE_PRIM(_BOOL, btKinematicCharacterController_canJump0, _IDL);
  2704. HL_PRIM void HL_NAME(btKinematicCharacterController_jump0)(_ref(btKinematicCharacterController)* _this) {
  2705. _unref(_this)->jump();
  2706. }
  2707. DEFINE_PRIM(_VOID, btKinematicCharacterController_jump0, _IDL);
  2708. HL_PRIM void HL_NAME(btKinematicCharacterController_setGravity1)(_ref(btKinematicCharacterController)* _this, _ref(btVector3)* gravity) {
  2709. _unref(_this)->setGravity(*_unref(gravity));
  2710. }
  2711. DEFINE_PRIM(_VOID, btKinematicCharacterController_setGravity1, _IDL _IDL);
  2712. HL_PRIM _ref(btVector3)* HL_NAME(btKinematicCharacterController_getGravity0)(_ref(btKinematicCharacterController)* _this) {
  2713. return alloc_ref(new btVector3(_unref(_this)->getGravity()),btVector3);
  2714. }
  2715. DEFINE_PRIM(_IDL, btKinematicCharacterController_getGravity0, _IDL);
  2716. HL_PRIM void HL_NAME(btKinematicCharacterController_setMaxSlope1)(_ref(btKinematicCharacterController)* _this, float slopeRadians) {
  2717. _unref(_this)->setMaxSlope(slopeRadians);
  2718. }
  2719. DEFINE_PRIM(_VOID, btKinematicCharacterController_setMaxSlope1, _IDL _F32);
  2720. HL_PRIM float HL_NAME(btKinematicCharacterController_getMaxSlope0)(_ref(btKinematicCharacterController)* _this) {
  2721. return _unref(_this)->getMaxSlope();
  2722. }
  2723. DEFINE_PRIM(_F32, btKinematicCharacterController_getMaxSlope0, _IDL);
  2724. HL_PRIM _ref(btPairCachingGhostObject)* HL_NAME(btKinematicCharacterController_getGhostObject0)(_ref(btKinematicCharacterController)* _this) {
  2725. return alloc_ref((_unref(_this)->getGhostObject()),btPairCachingGhostObject);
  2726. }
  2727. DEFINE_PRIM(_IDL, btKinematicCharacterController_getGhostObject0, _IDL);
  2728. HL_PRIM void HL_NAME(btKinematicCharacterController_setUseGhostSweepTest1)(_ref(btKinematicCharacterController)* _this, bool useGhostObjectSweepTest) {
  2729. _unref(_this)->setUseGhostSweepTest(useGhostObjectSweepTest);
  2730. }
  2731. DEFINE_PRIM(_VOID, btKinematicCharacterController_setUseGhostSweepTest1, _IDL _BOOL);
  2732. HL_PRIM bool HL_NAME(btKinematicCharacterController_onGround0)(_ref(btKinematicCharacterController)* _this) {
  2733. return _unref(_this)->onGround();
  2734. }
  2735. DEFINE_PRIM(_BOOL, btKinematicCharacterController_onGround0, _IDL);
  2736. HL_PRIM _ref(btRaycastVehicle)* HL_NAME(btRaycastVehicle_new3)(_ref(btRaycastVehicle::btVehicleTuning)* tuning, _ref(btRigidBody)* chassis, _ref(btVehicleRaycaster)* raycaster) {
  2737. return alloc_ref((new btRaycastVehicle(*_unref(tuning), _unref(chassis), _unref(raycaster))),btRaycastVehicle);
  2738. }
  2739. DEFINE_PRIM(_IDL, btRaycastVehicle_new3, _IDL _IDL _IDL);
  2740. HL_PRIM void HL_NAME(btRaycastVehicle_applyEngineForce2)(_ref(btRaycastVehicle)* _this, float force, int wheel) {
  2741. _unref(_this)->applyEngineForce(force, wheel);
  2742. }
  2743. DEFINE_PRIM(_VOID, btRaycastVehicle_applyEngineForce2, _IDL _F32 _I32);
  2744. HL_PRIM void HL_NAME(btRaycastVehicle_setSteeringValue2)(_ref(btRaycastVehicle)* _this, float steering, int wheel) {
  2745. _unref(_this)->setSteeringValue(steering, wheel);
  2746. }
  2747. DEFINE_PRIM(_VOID, btRaycastVehicle_setSteeringValue2, _IDL _F32 _I32);
  2748. HL_PRIM HL_CONST _ref(btTransform)* HL_NAME(btRaycastVehicle_getWheelTransformWS1)(_ref(btRaycastVehicle)* _this, int wheelIndex) {
  2749. return alloc_ref(new btTransform(_unref(_this)->getWheelTransformWS(wheelIndex)),btTransform);
  2750. }
  2751. DEFINE_PRIM(_IDL, btRaycastVehicle_getWheelTransformWS1, _IDL _I32);
  2752. HL_PRIM void HL_NAME(btRaycastVehicle_updateWheelTransform2)(_ref(btRaycastVehicle)* _this, int wheelIndex, bool interpolatedTransform) {
  2753. _unref(_this)->updateWheelTransform(wheelIndex, interpolatedTransform);
  2754. }
  2755. DEFINE_PRIM(_VOID, btRaycastVehicle_updateWheelTransform2, _IDL _I32 _BOOL);
  2756. HL_PRIM _ref(btWheelInfo)* HL_NAME(btRaycastVehicle_addWheel7)(_ref(btRaycastVehicle)* _this, _ref(btVector3)* connectionPointCS0, _ref(btVector3)* wheelDirectionCS0, _ref(btVector3)* wheelAxleCS, float suspensionRestLength, float wheelRadius, _ref(btRaycastVehicle::btVehicleTuning)* tuning, bool isFrontWheel) {
  2757. return alloc_ref(new btWheelInfo(_unref(_this)->addWheel(*_unref(connectionPointCS0), *_unref(wheelDirectionCS0), *_unref(wheelAxleCS), suspensionRestLength, wheelRadius, *_unref(tuning), isFrontWheel)),btWheelInfo);
  2758. }
  2759. DEFINE_PRIM(_IDL, btRaycastVehicle_addWheel7, _IDL _IDL _IDL _IDL _F32 _F32 _IDL _BOOL);
  2760. HL_PRIM int HL_NAME(btRaycastVehicle_getNumWheels0)(_ref(btRaycastVehicle)* _this) {
  2761. return _unref(_this)->getNumWheels();
  2762. }
  2763. DEFINE_PRIM(_I32, btRaycastVehicle_getNumWheels0, _IDL);
  2764. HL_PRIM _ref(btRigidBody)* HL_NAME(btRaycastVehicle_getRigidBody0)(_ref(btRaycastVehicle)* _this) {
  2765. return alloc_ref((_unref(_this)->getRigidBody()),btRigidBody);
  2766. }
  2767. DEFINE_PRIM(_IDL, btRaycastVehicle_getRigidBody0, _IDL);
  2768. HL_PRIM _ref(btWheelInfo)* HL_NAME(btRaycastVehicle_getWheelInfo1)(_ref(btRaycastVehicle)* _this, int index) {
  2769. return alloc_ref(new btWheelInfo(_unref(_this)->getWheelInfo(index)),btWheelInfo);
  2770. }
  2771. DEFINE_PRIM(_IDL, btRaycastVehicle_getWheelInfo1, _IDL _I32);
  2772. HL_PRIM void HL_NAME(btRaycastVehicle_setBrake2)(_ref(btRaycastVehicle)* _this, float brake, int wheelIndex) {
  2773. _unref(_this)->setBrake(brake, wheelIndex);
  2774. }
  2775. DEFINE_PRIM(_VOID, btRaycastVehicle_setBrake2, _IDL _F32 _I32);
  2776. HL_PRIM void HL_NAME(btRaycastVehicle_setCoordinateSystem3)(_ref(btRaycastVehicle)* _this, int rightIndex, int upIndex, int forwardIndex) {
  2777. _unref(_this)->setCoordinateSystem(rightIndex, upIndex, forwardIndex);
  2778. }
  2779. DEFINE_PRIM(_VOID, btRaycastVehicle_setCoordinateSystem3, _IDL _I32 _I32 _I32);
  2780. HL_PRIM float HL_NAME(btRaycastVehicle_getCurrentSpeedKmHour0)(_ref(btRaycastVehicle)* _this) {
  2781. return _unref(_this)->getCurrentSpeedKmHour();
  2782. }
  2783. DEFINE_PRIM(_F32, btRaycastVehicle_getCurrentSpeedKmHour0, _IDL);
  2784. HL_PRIM HL_CONST _ref(btTransform)* HL_NAME(btRaycastVehicle_getChassisWorldTransform0)(_ref(btRaycastVehicle)* _this) {
  2785. return alloc_ref(new btTransform(_unref(_this)->getChassisWorldTransform()),btTransform);
  2786. }
  2787. DEFINE_PRIM(_IDL, btRaycastVehicle_getChassisWorldTransform0, _IDL);
  2788. HL_PRIM float HL_NAME(btRaycastVehicle_rayCast1)(_ref(btRaycastVehicle)* _this, _ref(btWheelInfo)* wheel) {
  2789. return _unref(_this)->rayCast(*_unref(wheel));
  2790. }
  2791. DEFINE_PRIM(_F32, btRaycastVehicle_rayCast1, _IDL _IDL);
  2792. HL_PRIM void HL_NAME(btRaycastVehicle_updateVehicle1)(_ref(btRaycastVehicle)* _this, float step) {
  2793. _unref(_this)->updateVehicle(step);
  2794. }
  2795. DEFINE_PRIM(_VOID, btRaycastVehicle_updateVehicle1, _IDL _F32);
  2796. HL_PRIM void HL_NAME(btRaycastVehicle_resetSuspension0)(_ref(btRaycastVehicle)* _this) {
  2797. _unref(_this)->resetSuspension();
  2798. }
  2799. DEFINE_PRIM(_VOID, btRaycastVehicle_resetSuspension0, _IDL);
  2800. HL_PRIM float HL_NAME(btRaycastVehicle_getSteeringValue1)(_ref(btRaycastVehicle)* _this, int wheel) {
  2801. return _unref(_this)->getSteeringValue(wheel);
  2802. }
  2803. DEFINE_PRIM(_F32, btRaycastVehicle_getSteeringValue1, _IDL _I32);
  2804. HL_PRIM void HL_NAME(btRaycastVehicle_updateWheelTransformsWS2)(_ref(btRaycastVehicle)* _this, _ref(btWheelInfo)* wheel, _OPT(bool) interpolatedTransform) {
  2805. if( !interpolatedTransform )
  2806. _unref(_this)->updateWheelTransformsWS(*_unref(wheel));
  2807. else
  2808. _unref(_this)->updateWheelTransformsWS(*_unref(wheel), _GET_OPT(interpolatedTransform,b));
  2809. }
  2810. DEFINE_PRIM(_VOID, btRaycastVehicle_updateWheelTransformsWS2, _IDL _IDL _NULL(_BOOL));
  2811. HL_PRIM void HL_NAME(btRaycastVehicle_setPitchControl1)(_ref(btRaycastVehicle)* _this, float pitch) {
  2812. _unref(_this)->setPitchControl(pitch);
  2813. }
  2814. DEFINE_PRIM(_VOID, btRaycastVehicle_setPitchControl1, _IDL _F32);
  2815. HL_PRIM void HL_NAME(btRaycastVehicle_updateSuspension1)(_ref(btRaycastVehicle)* _this, float deltaTime) {
  2816. _unref(_this)->updateSuspension(deltaTime);
  2817. }
  2818. DEFINE_PRIM(_VOID, btRaycastVehicle_updateSuspension1, _IDL _F32);
  2819. HL_PRIM void HL_NAME(btRaycastVehicle_updateFriction1)(_ref(btRaycastVehicle)* _this, float timeStep) {
  2820. _unref(_this)->updateFriction(timeStep);
  2821. }
  2822. DEFINE_PRIM(_VOID, btRaycastVehicle_updateFriction1, _IDL _F32);
  2823. HL_PRIM int HL_NAME(btRaycastVehicle_getRightAxis0)(_ref(btRaycastVehicle)* _this) {
  2824. return _unref(_this)->getRightAxis();
  2825. }
  2826. DEFINE_PRIM(_I32, btRaycastVehicle_getRightAxis0, _IDL);
  2827. HL_PRIM int HL_NAME(btRaycastVehicle_getUpAxis0)(_ref(btRaycastVehicle)* _this) {
  2828. return _unref(_this)->getUpAxis();
  2829. }
  2830. DEFINE_PRIM(_I32, btRaycastVehicle_getUpAxis0, _IDL);
  2831. HL_PRIM int HL_NAME(btRaycastVehicle_getForwardAxis0)(_ref(btRaycastVehicle)* _this) {
  2832. return _unref(_this)->getForwardAxis();
  2833. }
  2834. DEFINE_PRIM(_I32, btRaycastVehicle_getForwardAxis0, _IDL);
  2835. HL_PRIM _ref(btVector3)* HL_NAME(btRaycastVehicle_getForwardVector0)(_ref(btRaycastVehicle)* _this) {
  2836. return alloc_ref(new btVector3(_unref(_this)->getForwardVector()),btVector3);
  2837. }
  2838. DEFINE_PRIM(_IDL, btRaycastVehicle_getForwardVector0, _IDL);
  2839. HL_PRIM int HL_NAME(btRaycastVehicle_getUserConstraintType0)(_ref(btRaycastVehicle)* _this) {
  2840. return _unref(_this)->getUserConstraintType();
  2841. }
  2842. DEFINE_PRIM(_I32, btRaycastVehicle_getUserConstraintType0, _IDL);
  2843. HL_PRIM void HL_NAME(btRaycastVehicle_setUserConstraintType1)(_ref(btRaycastVehicle)* _this, int userConstraintType) {
  2844. _unref(_this)->setUserConstraintType(userConstraintType);
  2845. }
  2846. DEFINE_PRIM(_VOID, btRaycastVehicle_setUserConstraintType1, _IDL _I32);
  2847. HL_PRIM void HL_NAME(btRaycastVehicle_setUserConstraintId1)(_ref(btRaycastVehicle)* _this, int uid) {
  2848. _unref(_this)->setUserConstraintId(uid);
  2849. }
  2850. DEFINE_PRIM(_VOID, btRaycastVehicle_setUserConstraintId1, _IDL _I32);
  2851. HL_PRIM int HL_NAME(btRaycastVehicle_getUserConstraintId0)(_ref(btRaycastVehicle)* _this) {
  2852. return _unref(_this)->getUserConstraintId();
  2853. }
  2854. DEFINE_PRIM(_I32, btRaycastVehicle_getUserConstraintId0, _IDL);
  2855. HL_PRIM _ref(btGhostObject)* HL_NAME(btGhostObject_new0)() {
  2856. return alloc_ref((new btGhostObject()),btGhostObject);
  2857. }
  2858. DEFINE_PRIM(_IDL, btGhostObject_new0,);
  2859. HL_PRIM int HL_NAME(btGhostObject_getNumOverlappingObjects0)(_ref(btGhostObject)* _this) {
  2860. return _unref(_this)->getNumOverlappingObjects();
  2861. }
  2862. DEFINE_PRIM(_I32, btGhostObject_getNumOverlappingObjects0, _IDL);
  2863. HL_PRIM _ref(btCollisionObject)* HL_NAME(btGhostObject_getOverlappingObject1)(_ref(btGhostObject)* _this, int index) {
  2864. return alloc_ref((_unref(_this)->getOverlappingObject(index)),btCollisionObject);
  2865. }
  2866. DEFINE_PRIM(_IDL, btGhostObject_getOverlappingObject1, _IDL _I32);
  2867. HL_PRIM _ref(btPairCachingGhostObject)* HL_NAME(btPairCachingGhostObject_new0)() {
  2868. return alloc_ref((new btPairCachingGhostObject()),btPairCachingGhostObject);
  2869. }
  2870. DEFINE_PRIM(_IDL, btPairCachingGhostObject_new0,);
  2871. HL_PRIM _ref(btGhostPairCallback)* HL_NAME(btGhostPairCallback_new0)() {
  2872. return alloc_ref((new btGhostPairCallback()),btGhostPairCallback);
  2873. }
  2874. DEFINE_PRIM(_IDL, btGhostPairCallback_new0,);
  2875. HL_PRIM _ref(btSoftBodyWorldInfo)* HL_NAME(btSoftBodyWorldInfo_new0)() {
  2876. return alloc_ref((new btSoftBodyWorldInfo()),btSoftBodyWorldInfo);
  2877. }
  2878. DEFINE_PRIM(_IDL, btSoftBodyWorldInfo_new0,);
  2879. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_get_air_density)( _ref(btSoftBodyWorldInfo)* _this ) {
  2880. return _unref(_this)->air_density;
  2881. }
  2882. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_set_air_density)( _ref(btSoftBodyWorldInfo)* _this, float value ) {
  2883. _unref(_this)->air_density = (value);
  2884. return value;
  2885. }
  2886. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_get_air_density,_IDL);
  2887. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_set_air_density,_IDL _F32);
  2888. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_get_water_density)( _ref(btSoftBodyWorldInfo)* _this ) {
  2889. return _unref(_this)->water_density;
  2890. }
  2891. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_set_water_density)( _ref(btSoftBodyWorldInfo)* _this, float value ) {
  2892. _unref(_this)->water_density = (value);
  2893. return value;
  2894. }
  2895. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_get_water_density,_IDL);
  2896. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_set_water_density,_IDL _F32);
  2897. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_get_water_offset)( _ref(btSoftBodyWorldInfo)* _this ) {
  2898. return _unref(_this)->water_offset;
  2899. }
  2900. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_set_water_offset)( _ref(btSoftBodyWorldInfo)* _this, float value ) {
  2901. _unref(_this)->water_offset = (value);
  2902. return value;
  2903. }
  2904. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_get_water_offset,_IDL);
  2905. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_set_water_offset,_IDL _F32);
  2906. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_get_m_maxDisplacement)( _ref(btSoftBodyWorldInfo)* _this ) {
  2907. return _unref(_this)->m_maxDisplacement;
  2908. }
  2909. HL_PRIM float HL_NAME(btSoftBodyWorldInfo_set_m_maxDisplacement)( _ref(btSoftBodyWorldInfo)* _this, float value ) {
  2910. _unref(_this)->m_maxDisplacement = (value);
  2911. return value;
  2912. }
  2913. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_get_m_maxDisplacement,_IDL);
  2914. DEFINE_PRIM(_F32,btSoftBodyWorldInfo_set_m_maxDisplacement,_IDL _F32);
  2915. HL_PRIM _ref(btVector3)* HL_NAME(btSoftBodyWorldInfo_get_water_normal)( _ref(btSoftBodyWorldInfo)* _this ) {
  2916. return alloc_ref(new btVector3(_unref(_this)->water_normal),btVector3);
  2917. }
  2918. HL_PRIM _ref(btVector3)* HL_NAME(btSoftBodyWorldInfo_set_water_normal)( _ref(btSoftBodyWorldInfo)* _this, _ref(btVector3)* value ) {
  2919. _unref(_this)->water_normal = *_unref(value);
  2920. return value;
  2921. }
  2922. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_get_water_normal,_IDL);
  2923. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_set_water_normal,_IDL _IDL);
  2924. HL_PRIM _ref(btBroadphaseInterface)* HL_NAME(btSoftBodyWorldInfo_get_m_broadphase)( _ref(btSoftBodyWorldInfo)* _this ) {
  2925. return alloc_ref(_unref(_this)->m_broadphase,btBroadphaseInterface);
  2926. }
  2927. HL_PRIM _ref(btBroadphaseInterface)* HL_NAME(btSoftBodyWorldInfo_set_m_broadphase)( _ref(btSoftBodyWorldInfo)* _this, _ref(btBroadphaseInterface)* value ) {
  2928. _unref(_this)->m_broadphase = _unref(value);
  2929. return value;
  2930. }
  2931. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_get_m_broadphase,_IDL);
  2932. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_set_m_broadphase,_IDL _IDL);
  2933. HL_PRIM _ref(btDispatcher)* HL_NAME(btSoftBodyWorldInfo_get_m_dispatcher)( _ref(btSoftBodyWorldInfo)* _this ) {
  2934. return alloc_ref(_unref(_this)->m_dispatcher,btDispatcher);
  2935. }
  2936. HL_PRIM _ref(btDispatcher)* HL_NAME(btSoftBodyWorldInfo_set_m_dispatcher)( _ref(btSoftBodyWorldInfo)* _this, _ref(btDispatcher)* value ) {
  2937. _unref(_this)->m_dispatcher = _unref(value);
  2938. return value;
  2939. }
  2940. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_get_m_dispatcher,_IDL);
  2941. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_set_m_dispatcher,_IDL _IDL);
  2942. HL_PRIM _ref(btVector3)* HL_NAME(btSoftBodyWorldInfo_get_m_gravity)( _ref(btSoftBodyWorldInfo)* _this ) {
  2943. return alloc_ref(new btVector3(_unref(_this)->m_gravity),btVector3);
  2944. }
  2945. HL_PRIM _ref(btVector3)* HL_NAME(btSoftBodyWorldInfo_set_m_gravity)( _ref(btSoftBodyWorldInfo)* _this, _ref(btVector3)* value ) {
  2946. _unref(_this)->m_gravity = *_unref(value);
  2947. return value;
  2948. }
  2949. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_get_m_gravity,_IDL);
  2950. DEFINE_PRIM(_IDL,btSoftBodyWorldInfo_set_m_gravity,_IDL _IDL);
  2951. HL_PRIM _ref(btVector3)* HL_NAME(Node_get_m_x)( _ref(btSoftBody::Node)* _this ) {
  2952. return alloc_ref(new btVector3(_unref(_this)->m_x),btVector3);
  2953. }
  2954. HL_PRIM _ref(btVector3)* HL_NAME(Node_set_m_x)( _ref(btSoftBody::Node)* _this, _ref(btVector3)* value ) {
  2955. _unref(_this)->m_x = *_unref(value);
  2956. return value;
  2957. }
  2958. DEFINE_PRIM(_IDL,Node_get_m_x,_IDL);
  2959. DEFINE_PRIM(_IDL,Node_set_m_x,_IDL _IDL);
  2960. HL_PRIM _ref(btVector3)* HL_NAME(Node_get_m_n)( _ref(btSoftBody::Node)* _this ) {
  2961. return alloc_ref(new btVector3(_unref(_this)->m_n),btVector3);
  2962. }
  2963. HL_PRIM _ref(btVector3)* HL_NAME(Node_set_m_n)( _ref(btSoftBody::Node)* _this, _ref(btVector3)* value ) {
  2964. _unref(_this)->m_n = *_unref(value);
  2965. return value;
  2966. }
  2967. DEFINE_PRIM(_IDL,Node_get_m_n,_IDL);
  2968. DEFINE_PRIM(_IDL,Node_set_m_n,_IDL _IDL);
  2969. HL_PRIM HL_CONST int HL_NAME(tNodeArray_size0)(_ref(btSoftBody::tNodeArray)* _this) {
  2970. return _unref(_this)->size();
  2971. }
  2972. DEFINE_PRIM(_I32, tNodeArray_size0, _IDL);
  2973. HL_PRIM HL_CONST _ref(btSoftBody::Node)* HL_NAME(tNodeArray_at1)(_ref(btSoftBody::tNodeArray)* _this, int n) {
  2974. return alloc_ref(new btSoftBody::Node(_unref(_this)->at(n)),Node);
  2975. }
  2976. DEFINE_PRIM(_IDL, tNodeArray_at1, _IDL _I32);
  2977. HL_PRIM float HL_NAME(Material_get_m_kLST)( _ref(btSoftBody::Material)* _this ) {
  2978. return _unref(_this)->m_kLST;
  2979. }
  2980. HL_PRIM float HL_NAME(Material_set_m_kLST)( _ref(btSoftBody::Material)* _this, float value ) {
  2981. _unref(_this)->m_kLST = (value);
  2982. return value;
  2983. }
  2984. DEFINE_PRIM(_F32,Material_get_m_kLST,_IDL);
  2985. DEFINE_PRIM(_F32,Material_set_m_kLST,_IDL _F32);
  2986. HL_PRIM float HL_NAME(Material_get_m_kAST)( _ref(btSoftBody::Material)* _this ) {
  2987. return _unref(_this)->m_kAST;
  2988. }
  2989. HL_PRIM float HL_NAME(Material_set_m_kAST)( _ref(btSoftBody::Material)* _this, float value ) {
  2990. _unref(_this)->m_kAST = (value);
  2991. return value;
  2992. }
  2993. DEFINE_PRIM(_F32,Material_get_m_kAST,_IDL);
  2994. DEFINE_PRIM(_F32,Material_set_m_kAST,_IDL _F32);
  2995. HL_PRIM float HL_NAME(Material_get_m_kVST)( _ref(btSoftBody::Material)* _this ) {
  2996. return _unref(_this)->m_kVST;
  2997. }
  2998. HL_PRIM float HL_NAME(Material_set_m_kVST)( _ref(btSoftBody::Material)* _this, float value ) {
  2999. _unref(_this)->m_kVST = (value);
  3000. return value;
  3001. }
  3002. DEFINE_PRIM(_F32,Material_get_m_kVST,_IDL);
  3003. DEFINE_PRIM(_F32,Material_set_m_kVST,_IDL _F32);
  3004. HL_PRIM int HL_NAME(Material_get_m_flags)( _ref(btSoftBody::Material)* _this ) {
  3005. return _unref(_this)->m_flags;
  3006. }
  3007. HL_PRIM int HL_NAME(Material_set_m_flags)( _ref(btSoftBody::Material)* _this, int value ) {
  3008. _unref(_this)->m_flags = (value);
  3009. return value;
  3010. }
  3011. DEFINE_PRIM(_I32,Material_get_m_flags,_IDL);
  3012. DEFINE_PRIM(_I32,Material_set_m_flags,_IDL _I32);
  3013. HL_PRIM HL_CONST int HL_NAME(tMaterialArray_size0)(_ref(btSoftBody::tMaterialArray)* _this) {
  3014. return _unref(_this)->size();
  3015. }
  3016. DEFINE_PRIM(_I32, tMaterialArray_size0, _IDL);
  3017. HL_PRIM _ref(btSoftBody::Material)* HL_NAME(tMaterialArray_at1)(_ref(btSoftBody::tMaterialArray)* _this, int n) {
  3018. return alloc_ref((_unref(_this)->at(n)),Material);
  3019. }
  3020. DEFINE_PRIM(_IDL, tMaterialArray_at1, _IDL _I32);
  3021. HL_PRIM float HL_NAME(Config_get_kVCF)( _ref(btSoftBody::Config)* _this ) {
  3022. return _unref(_this)->kVCF;
  3023. }
  3024. HL_PRIM float HL_NAME(Config_set_kVCF)( _ref(btSoftBody::Config)* _this, float value ) {
  3025. _unref(_this)->kVCF = (value);
  3026. return value;
  3027. }
  3028. DEFINE_PRIM(_F32,Config_get_kVCF,_IDL);
  3029. DEFINE_PRIM(_F32,Config_set_kVCF,_IDL _F32);
  3030. HL_PRIM float HL_NAME(Config_get_kDP)( _ref(btSoftBody::Config)* _this ) {
  3031. return _unref(_this)->kDP;
  3032. }
  3033. HL_PRIM float HL_NAME(Config_set_kDP)( _ref(btSoftBody::Config)* _this, float value ) {
  3034. _unref(_this)->kDP = (value);
  3035. return value;
  3036. }
  3037. DEFINE_PRIM(_F32,Config_get_kDP,_IDL);
  3038. DEFINE_PRIM(_F32,Config_set_kDP,_IDL _F32);
  3039. HL_PRIM float HL_NAME(Config_get_kDG)( _ref(btSoftBody::Config)* _this ) {
  3040. return _unref(_this)->kDG;
  3041. }
  3042. HL_PRIM float HL_NAME(Config_set_kDG)( _ref(btSoftBody::Config)* _this, float value ) {
  3043. _unref(_this)->kDG = (value);
  3044. return value;
  3045. }
  3046. DEFINE_PRIM(_F32,Config_get_kDG,_IDL);
  3047. DEFINE_PRIM(_F32,Config_set_kDG,_IDL _F32);
  3048. HL_PRIM float HL_NAME(Config_get_kLF)( _ref(btSoftBody::Config)* _this ) {
  3049. return _unref(_this)->kLF;
  3050. }
  3051. HL_PRIM float HL_NAME(Config_set_kLF)( _ref(btSoftBody::Config)* _this, float value ) {
  3052. _unref(_this)->kLF = (value);
  3053. return value;
  3054. }
  3055. DEFINE_PRIM(_F32,Config_get_kLF,_IDL);
  3056. DEFINE_PRIM(_F32,Config_set_kLF,_IDL _F32);
  3057. HL_PRIM float HL_NAME(Config_get_kPR)( _ref(btSoftBody::Config)* _this ) {
  3058. return _unref(_this)->kPR;
  3059. }
  3060. HL_PRIM float HL_NAME(Config_set_kPR)( _ref(btSoftBody::Config)* _this, float value ) {
  3061. _unref(_this)->kPR = (value);
  3062. return value;
  3063. }
  3064. DEFINE_PRIM(_F32,Config_get_kPR,_IDL);
  3065. DEFINE_PRIM(_F32,Config_set_kPR,_IDL _F32);
  3066. HL_PRIM float HL_NAME(Config_get_kVC)( _ref(btSoftBody::Config)* _this ) {
  3067. return _unref(_this)->kVC;
  3068. }
  3069. HL_PRIM float HL_NAME(Config_set_kVC)( _ref(btSoftBody::Config)* _this, float value ) {
  3070. _unref(_this)->kVC = (value);
  3071. return value;
  3072. }
  3073. DEFINE_PRIM(_F32,Config_get_kVC,_IDL);
  3074. DEFINE_PRIM(_F32,Config_set_kVC,_IDL _F32);
  3075. HL_PRIM float HL_NAME(Config_get_kDF)( _ref(btSoftBody::Config)* _this ) {
  3076. return _unref(_this)->kDF;
  3077. }
  3078. HL_PRIM float HL_NAME(Config_set_kDF)( _ref(btSoftBody::Config)* _this, float value ) {
  3079. _unref(_this)->kDF = (value);
  3080. return value;
  3081. }
  3082. DEFINE_PRIM(_F32,Config_get_kDF,_IDL);
  3083. DEFINE_PRIM(_F32,Config_set_kDF,_IDL _F32);
  3084. HL_PRIM float HL_NAME(Config_get_kMT)( _ref(btSoftBody::Config)* _this ) {
  3085. return _unref(_this)->kMT;
  3086. }
  3087. HL_PRIM float HL_NAME(Config_set_kMT)( _ref(btSoftBody::Config)* _this, float value ) {
  3088. _unref(_this)->kMT = (value);
  3089. return value;
  3090. }
  3091. DEFINE_PRIM(_F32,Config_get_kMT,_IDL);
  3092. DEFINE_PRIM(_F32,Config_set_kMT,_IDL _F32);
  3093. HL_PRIM float HL_NAME(Config_get_kCHR)( _ref(btSoftBody::Config)* _this ) {
  3094. return _unref(_this)->kCHR;
  3095. }
  3096. HL_PRIM float HL_NAME(Config_set_kCHR)( _ref(btSoftBody::Config)* _this, float value ) {
  3097. _unref(_this)->kCHR = (value);
  3098. return value;
  3099. }
  3100. DEFINE_PRIM(_F32,Config_get_kCHR,_IDL);
  3101. DEFINE_PRIM(_F32,Config_set_kCHR,_IDL _F32);
  3102. HL_PRIM float HL_NAME(Config_get_kKHR)( _ref(btSoftBody::Config)* _this ) {
  3103. return _unref(_this)->kKHR;
  3104. }
  3105. HL_PRIM float HL_NAME(Config_set_kKHR)( _ref(btSoftBody::Config)* _this, float value ) {
  3106. _unref(_this)->kKHR = (value);
  3107. return value;
  3108. }
  3109. DEFINE_PRIM(_F32,Config_get_kKHR,_IDL);
  3110. DEFINE_PRIM(_F32,Config_set_kKHR,_IDL _F32);
  3111. HL_PRIM float HL_NAME(Config_get_kSHR)( _ref(btSoftBody::Config)* _this ) {
  3112. return _unref(_this)->kSHR;
  3113. }
  3114. HL_PRIM float HL_NAME(Config_set_kSHR)( _ref(btSoftBody::Config)* _this, float value ) {
  3115. _unref(_this)->kSHR = (value);
  3116. return value;
  3117. }
  3118. DEFINE_PRIM(_F32,Config_get_kSHR,_IDL);
  3119. DEFINE_PRIM(_F32,Config_set_kSHR,_IDL _F32);
  3120. HL_PRIM float HL_NAME(Config_get_kAHR)( _ref(btSoftBody::Config)* _this ) {
  3121. return _unref(_this)->kAHR;
  3122. }
  3123. HL_PRIM float HL_NAME(Config_set_kAHR)( _ref(btSoftBody::Config)* _this, float value ) {
  3124. _unref(_this)->kAHR = (value);
  3125. return value;
  3126. }
  3127. DEFINE_PRIM(_F32,Config_get_kAHR,_IDL);
  3128. DEFINE_PRIM(_F32,Config_set_kAHR,_IDL _F32);
  3129. HL_PRIM float HL_NAME(Config_get_kSRHR_CL)( _ref(btSoftBody::Config)* _this ) {
  3130. return _unref(_this)->kSRHR_CL;
  3131. }
  3132. HL_PRIM float HL_NAME(Config_set_kSRHR_CL)( _ref(btSoftBody::Config)* _this, float value ) {
  3133. _unref(_this)->kSRHR_CL = (value);
  3134. return value;
  3135. }
  3136. DEFINE_PRIM(_F32,Config_get_kSRHR_CL,_IDL);
  3137. DEFINE_PRIM(_F32,Config_set_kSRHR_CL,_IDL _F32);
  3138. HL_PRIM float HL_NAME(Config_get_kSKHR_CL)( _ref(btSoftBody::Config)* _this ) {
  3139. return _unref(_this)->kSKHR_CL;
  3140. }
  3141. HL_PRIM float HL_NAME(Config_set_kSKHR_CL)( _ref(btSoftBody::Config)* _this, float value ) {
  3142. _unref(_this)->kSKHR_CL = (value);
  3143. return value;
  3144. }
  3145. DEFINE_PRIM(_F32,Config_get_kSKHR_CL,_IDL);
  3146. DEFINE_PRIM(_F32,Config_set_kSKHR_CL,_IDL _F32);
  3147. HL_PRIM float HL_NAME(Config_get_kSSHR_CL)( _ref(btSoftBody::Config)* _this ) {
  3148. return _unref(_this)->kSSHR_CL;
  3149. }
  3150. HL_PRIM float HL_NAME(Config_set_kSSHR_CL)( _ref(btSoftBody::Config)* _this, float value ) {
  3151. _unref(_this)->kSSHR_CL = (value);
  3152. return value;
  3153. }
  3154. DEFINE_PRIM(_F32,Config_get_kSSHR_CL,_IDL);
  3155. DEFINE_PRIM(_F32,Config_set_kSSHR_CL,_IDL _F32);
  3156. HL_PRIM float HL_NAME(Config_get_kSR_SPLT_CL)( _ref(btSoftBody::Config)* _this ) {
  3157. return _unref(_this)->kSR_SPLT_CL;
  3158. }
  3159. HL_PRIM float HL_NAME(Config_set_kSR_SPLT_CL)( _ref(btSoftBody::Config)* _this, float value ) {
  3160. _unref(_this)->kSR_SPLT_CL = (value);
  3161. return value;
  3162. }
  3163. DEFINE_PRIM(_F32,Config_get_kSR_SPLT_CL,_IDL);
  3164. DEFINE_PRIM(_F32,Config_set_kSR_SPLT_CL,_IDL _F32);
  3165. HL_PRIM float HL_NAME(Config_get_kSK_SPLT_CL)( _ref(btSoftBody::Config)* _this ) {
  3166. return _unref(_this)->kSK_SPLT_CL;
  3167. }
  3168. HL_PRIM float HL_NAME(Config_set_kSK_SPLT_CL)( _ref(btSoftBody::Config)* _this, float value ) {
  3169. _unref(_this)->kSK_SPLT_CL = (value);
  3170. return value;
  3171. }
  3172. DEFINE_PRIM(_F32,Config_get_kSK_SPLT_CL,_IDL);
  3173. DEFINE_PRIM(_F32,Config_set_kSK_SPLT_CL,_IDL _F32);
  3174. HL_PRIM float HL_NAME(Config_get_kSS_SPLT_CL)( _ref(btSoftBody::Config)* _this ) {
  3175. return _unref(_this)->kSS_SPLT_CL;
  3176. }
  3177. HL_PRIM float HL_NAME(Config_set_kSS_SPLT_CL)( _ref(btSoftBody::Config)* _this, float value ) {
  3178. _unref(_this)->kSS_SPLT_CL = (value);
  3179. return value;
  3180. }
  3181. DEFINE_PRIM(_F32,Config_get_kSS_SPLT_CL,_IDL);
  3182. DEFINE_PRIM(_F32,Config_set_kSS_SPLT_CL,_IDL _F32);
  3183. HL_PRIM float HL_NAME(Config_get_maxvolume)( _ref(btSoftBody::Config)* _this ) {
  3184. return _unref(_this)->maxvolume;
  3185. }
  3186. HL_PRIM float HL_NAME(Config_set_maxvolume)( _ref(btSoftBody::Config)* _this, float value ) {
  3187. _unref(_this)->maxvolume = (value);
  3188. return value;
  3189. }
  3190. DEFINE_PRIM(_F32,Config_get_maxvolume,_IDL);
  3191. DEFINE_PRIM(_F32,Config_set_maxvolume,_IDL _F32);
  3192. HL_PRIM float HL_NAME(Config_get_timescale)( _ref(btSoftBody::Config)* _this ) {
  3193. return _unref(_this)->timescale;
  3194. }
  3195. HL_PRIM float HL_NAME(Config_set_timescale)( _ref(btSoftBody::Config)* _this, float value ) {
  3196. _unref(_this)->timescale = (value);
  3197. return value;
  3198. }
  3199. DEFINE_PRIM(_F32,Config_get_timescale,_IDL);
  3200. DEFINE_PRIM(_F32,Config_set_timescale,_IDL _F32);
  3201. HL_PRIM int HL_NAME(Config_get_viterations)( _ref(btSoftBody::Config)* _this ) {
  3202. return _unref(_this)->viterations;
  3203. }
  3204. HL_PRIM int HL_NAME(Config_set_viterations)( _ref(btSoftBody::Config)* _this, int value ) {
  3205. _unref(_this)->viterations = (value);
  3206. return value;
  3207. }
  3208. DEFINE_PRIM(_I32,Config_get_viterations,_IDL);
  3209. DEFINE_PRIM(_I32,Config_set_viterations,_IDL _I32);
  3210. HL_PRIM int HL_NAME(Config_get_piterations)( _ref(btSoftBody::Config)* _this ) {
  3211. return _unref(_this)->piterations;
  3212. }
  3213. HL_PRIM int HL_NAME(Config_set_piterations)( _ref(btSoftBody::Config)* _this, int value ) {
  3214. _unref(_this)->piterations = (value);
  3215. return value;
  3216. }
  3217. DEFINE_PRIM(_I32,Config_get_piterations,_IDL);
  3218. DEFINE_PRIM(_I32,Config_set_piterations,_IDL _I32);
  3219. HL_PRIM int HL_NAME(Config_get_diterations)( _ref(btSoftBody::Config)* _this ) {
  3220. return _unref(_this)->diterations;
  3221. }
  3222. HL_PRIM int HL_NAME(Config_set_diterations)( _ref(btSoftBody::Config)* _this, int value ) {
  3223. _unref(_this)->diterations = (value);
  3224. return value;
  3225. }
  3226. DEFINE_PRIM(_I32,Config_get_diterations,_IDL);
  3227. DEFINE_PRIM(_I32,Config_set_diterations,_IDL _I32);
  3228. HL_PRIM int HL_NAME(Config_get_citerations)( _ref(btSoftBody::Config)* _this ) {
  3229. return _unref(_this)->citerations;
  3230. }
  3231. HL_PRIM int HL_NAME(Config_set_citerations)( _ref(btSoftBody::Config)* _this, int value ) {
  3232. _unref(_this)->citerations = (value);
  3233. return value;
  3234. }
  3235. DEFINE_PRIM(_I32,Config_get_citerations,_IDL);
  3236. DEFINE_PRIM(_I32,Config_set_citerations,_IDL _I32);
  3237. HL_PRIM int HL_NAME(Config_get_collisions)( _ref(btSoftBody::Config)* _this ) {
  3238. return _unref(_this)->collisions;
  3239. }
  3240. HL_PRIM int HL_NAME(Config_set_collisions)( _ref(btSoftBody::Config)* _this, int value ) {
  3241. _unref(_this)->collisions = (value);
  3242. return value;
  3243. }
  3244. DEFINE_PRIM(_I32,Config_get_collisions,_IDL);
  3245. DEFINE_PRIM(_I32,Config_set_collisions,_IDL _I32);
  3246. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBody_new4)(_ref(btSoftBodyWorldInfo)* worldInfo, int node_count, _ref(btVector3)* x, float* m) {
  3247. return alloc_ref((new btSoftBody(_unref(worldInfo), node_count, _unref(x), m)),btSoftBody);
  3248. }
  3249. DEFINE_PRIM(_IDL, btSoftBody_new4, _IDL _I32 _IDL _BYTES);
  3250. HL_PRIM _ref(btSoftBody::Config)* HL_NAME(btSoftBody_get_m_cfg)( _ref(btSoftBody)* _this ) {
  3251. return alloc_ref(new btSoftBody::Config(_unref(_this)->m_cfg),Config);
  3252. }
  3253. HL_PRIM _ref(btSoftBody::Config)* HL_NAME(btSoftBody_set_m_cfg)( _ref(btSoftBody)* _this, _ref(btSoftBody::Config)* value ) {
  3254. _unref(_this)->m_cfg = *_unref(value);
  3255. return value;
  3256. }
  3257. DEFINE_PRIM(_IDL,btSoftBody_get_m_cfg,_IDL);
  3258. DEFINE_PRIM(_IDL,btSoftBody_set_m_cfg,_IDL _IDL);
  3259. HL_PRIM _ref(btSoftBody::tNodeArray)* HL_NAME(btSoftBody_get_m_nodes)( _ref(btSoftBody)* _this ) {
  3260. return alloc_ref(new btSoftBody::tNodeArray(_unref(_this)->m_nodes),tNodeArray);
  3261. }
  3262. HL_PRIM _ref(btSoftBody::tNodeArray)* HL_NAME(btSoftBody_set_m_nodes)( _ref(btSoftBody)* _this, _ref(btSoftBody::tNodeArray)* value ) {
  3263. _unref(_this)->m_nodes = *_unref(value);
  3264. return value;
  3265. }
  3266. DEFINE_PRIM(_IDL,btSoftBody_get_m_nodes,_IDL);
  3267. DEFINE_PRIM(_IDL,btSoftBody_set_m_nodes,_IDL _IDL);
  3268. HL_PRIM _ref(btSoftBody::tMaterialArray)* HL_NAME(btSoftBody_get_m_materials)( _ref(btSoftBody)* _this ) {
  3269. return alloc_ref(new btSoftBody::tMaterialArray(_unref(_this)->m_materials),tMaterialArray);
  3270. }
  3271. HL_PRIM _ref(btSoftBody::tMaterialArray)* HL_NAME(btSoftBody_set_m_materials)( _ref(btSoftBody)* _this, _ref(btSoftBody::tMaterialArray)* value ) {
  3272. _unref(_this)->m_materials = *_unref(value);
  3273. return value;
  3274. }
  3275. DEFINE_PRIM(_IDL,btSoftBody_get_m_materials,_IDL);
  3276. DEFINE_PRIM(_IDL,btSoftBody_set_m_materials,_IDL _IDL);
  3277. HL_PRIM HL_CONST bool HL_NAME(btSoftBody_checkLink2)(_ref(btSoftBody)* _this, int node0, int node1) {
  3278. return _unref(_this)->checkLink(node0, node1);
  3279. }
  3280. DEFINE_PRIM(_BOOL, btSoftBody_checkLink2, _IDL _I32 _I32);
  3281. HL_PRIM HL_CONST bool HL_NAME(btSoftBody_checkFace3)(_ref(btSoftBody)* _this, int node0, int node1, int node2) {
  3282. return _unref(_this)->checkFace(node0, node1, node2);
  3283. }
  3284. DEFINE_PRIM(_BOOL, btSoftBody_checkFace3, _IDL _I32 _I32 _I32);
  3285. HL_PRIM _ref(btSoftBody::Material)* HL_NAME(btSoftBody_appendMaterial0)(_ref(btSoftBody)* _this) {
  3286. return alloc_ref((_unref(_this)->appendMaterial()),Material);
  3287. }
  3288. DEFINE_PRIM(_IDL, btSoftBody_appendMaterial0, _IDL);
  3289. HL_PRIM void HL_NAME(btSoftBody_appendNode2)(_ref(btSoftBody)* _this, _ref(btVector3)* x, float m) {
  3290. _unref(_this)->appendNode(*_unref(x), m);
  3291. }
  3292. DEFINE_PRIM(_VOID, btSoftBody_appendNode2, _IDL _IDL _F32);
  3293. HL_PRIM void HL_NAME(btSoftBody_appendLink4)(_ref(btSoftBody)* _this, int node0, int node1, _ref(btSoftBody::Material)* mat, bool bcheckexist) {
  3294. _unref(_this)->appendLink(node0, node1, _unref(mat), bcheckexist);
  3295. }
  3296. DEFINE_PRIM(_VOID, btSoftBody_appendLink4, _IDL _I32 _I32 _IDL _BOOL);
  3297. HL_PRIM void HL_NAME(btSoftBody_appendFace4)(_ref(btSoftBody)* _this, int node0, int node1, int node2, _ref(btSoftBody::Material)* mat) {
  3298. _unref(_this)->appendFace(node0, node1, node2, _unref(mat));
  3299. }
  3300. DEFINE_PRIM(_VOID, btSoftBody_appendFace4, _IDL _I32 _I32 _I32 _IDL);
  3301. HL_PRIM void HL_NAME(btSoftBody_appendTetra5)(_ref(btSoftBody)* _this, int node0, int node1, int node2, int node3, _ref(btSoftBody::Material)* mat) {
  3302. _unref(_this)->appendTetra(node0, node1, node2, node3, _unref(mat));
  3303. }
  3304. DEFINE_PRIM(_VOID, btSoftBody_appendTetra5, _IDL _I32 _I32 _I32 _I32 _IDL);
  3305. HL_PRIM void HL_NAME(btSoftBody_appendAnchor4)(_ref(btSoftBody)* _this, int node, _ref(btRigidBody)* body, bool disableCollisionBetweenLinkedBodies, float influence) {
  3306. _unref(_this)->appendAnchor(node, _unref(body), disableCollisionBetweenLinkedBodies, influence);
  3307. }
  3308. DEFINE_PRIM(_VOID, btSoftBody_appendAnchor4, _IDL _I32 _IDL _BOOL _F32);
  3309. HL_PRIM HL_CONST float HL_NAME(btSoftBody_getTotalMass0)(_ref(btSoftBody)* _this) {
  3310. return _unref(_this)->getTotalMass();
  3311. }
  3312. DEFINE_PRIM(_F32, btSoftBody_getTotalMass0, _IDL);
  3313. HL_PRIM void HL_NAME(btSoftBody_setTotalMass2)(_ref(btSoftBody)* _this, float mass, bool fromfaces) {
  3314. _unref(_this)->setTotalMass(mass, fromfaces);
  3315. }
  3316. DEFINE_PRIM(_VOID, btSoftBody_setTotalMass2, _IDL _F32 _BOOL);
  3317. HL_PRIM void HL_NAME(btSoftBody_setMass2)(_ref(btSoftBody)* _this, int node, float mass) {
  3318. _unref(_this)->setMass(node, mass);
  3319. }
  3320. DEFINE_PRIM(_VOID, btSoftBody_setMass2, _IDL _I32 _F32);
  3321. HL_PRIM void HL_NAME(btSoftBody_transform1)(_ref(btSoftBody)* _this, _ref(btTransform)* trs) {
  3322. _unref(_this)->transform(*_unref(trs));
  3323. }
  3324. DEFINE_PRIM(_VOID, btSoftBody_transform1, _IDL _IDL);
  3325. HL_PRIM void HL_NAME(btSoftBody_translate1)(_ref(btSoftBody)* _this, _ref(btVector3)* trs) {
  3326. _unref(_this)->translate(*_unref(trs));
  3327. }
  3328. DEFINE_PRIM(_VOID, btSoftBody_translate1, _IDL _IDL);
  3329. HL_PRIM void HL_NAME(btSoftBody_rotate1)(_ref(btSoftBody)* _this, _ref(btQuaternion)* rot) {
  3330. _unref(_this)->rotate(*_unref(rot));
  3331. }
  3332. DEFINE_PRIM(_VOID, btSoftBody_rotate1, _IDL _IDL);
  3333. HL_PRIM void HL_NAME(btSoftBody_scale1)(_ref(btSoftBody)* _this, _ref(btVector3)* scl) {
  3334. _unref(_this)->scale(*_unref(scl));
  3335. }
  3336. DEFINE_PRIM(_VOID, btSoftBody_scale1, _IDL _IDL);
  3337. HL_PRIM int HL_NAME(btSoftBody_generateClusters2)(_ref(btSoftBody)* _this, int k, _OPT(int) maxiterations) {
  3338. if( !maxiterations )
  3339. return _unref(_this)->generateClusters(k);
  3340. else
  3341. return _unref(_this)->generateClusters(k, _GET_OPT(maxiterations,i));
  3342. }
  3343. DEFINE_PRIM(_I32, btSoftBody_generateClusters2, _IDL _I32 _NULL(_I32));
  3344. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBody_upcast1)(_ref(btSoftBody)* _this, _ref(btCollisionObject)* colObj) {
  3345. return alloc_ref((_unref(_this)->upcast(_unref(colObj))),btSoftBody);
  3346. }
  3347. DEFINE_PRIM(_IDL, btSoftBody_upcast1, _IDL _IDL);
  3348. HL_PRIM _ref(btSoftBodyRigidBodyCollisionConfiguration)* HL_NAME(btSoftBodyRigidBodyCollisionConfiguration_new1)(_ref(btDefaultCollisionConstructionInfo)* info) {
  3349. if( !info )
  3350. return alloc_ref((new btSoftBodyRigidBodyCollisionConfiguration()),btSoftBodyRigidBodyCollisionConfiguration);
  3351. else
  3352. return alloc_ref((new btSoftBodyRigidBodyCollisionConfiguration(*_unref(info))),btSoftBodyRigidBodyCollisionConfiguration);
  3353. }
  3354. DEFINE_PRIM(_IDL, btSoftBodyRigidBodyCollisionConfiguration_new1, _IDL);
  3355. HL_PRIM _ref(btDefaultSoftBodySolver)* HL_NAME(btDefaultSoftBodySolver_new0)() {
  3356. return alloc_ref((new btDefaultSoftBodySolver()),btDefaultSoftBodySolver);
  3357. }
  3358. DEFINE_PRIM(_IDL, btDefaultSoftBodySolver_new0,);
  3359. HL_PRIM HL_CONST int HL_NAME(btSoftBodyArray_size0)(_ref(btSoftBodyArray)* _this) {
  3360. return _unref(_this)->size();
  3361. }
  3362. DEFINE_PRIM(_I32, btSoftBodyArray_size0, _IDL);
  3363. HL_PRIM HL_CONST _ref(btSoftBody)* HL_NAME(btSoftBodyArray_at1)(_ref(btSoftBodyArray)* _this, int n) {
  3364. return alloc_ref_const((_unref(_this)->at(n)),btSoftBody);
  3365. }
  3366. DEFINE_PRIM(_IDL, btSoftBodyArray_at1, _IDL _I32);
  3367. HL_PRIM _ref(btSoftRigidDynamicsWorld)* HL_NAME(btSoftRigidDynamicsWorld_new5)(_ref(btDispatcher)* dispatcher, _ref(btBroadphaseInterface)* pairCache, _ref(btConstraintSolver)* constraintSolver, _ref(btCollisionConfiguration)* collisionConfiguration, _ref(btSoftBodySolver)* softBodySolver) {
  3368. return alloc_ref((new btSoftRigidDynamicsWorld(_unref(dispatcher), _unref(pairCache), _unref(constraintSolver), _unref(collisionConfiguration), _unref(softBodySolver))),btSoftRigidDynamicsWorld);
  3369. }
  3370. DEFINE_PRIM(_IDL, btSoftRigidDynamicsWorld_new5, _IDL _IDL _IDL _IDL _IDL);
  3371. HL_PRIM void HL_NAME(btSoftRigidDynamicsWorld_addSoftBody3)(_ref(btSoftRigidDynamicsWorld)* _this, _ref(btSoftBody)* body, short collisionFilterGroup, short collisionFilterMask) {
  3372. _unref(_this)->addSoftBody(_unref(body), collisionFilterGroup, collisionFilterMask);
  3373. }
  3374. DEFINE_PRIM(_VOID, btSoftRigidDynamicsWorld_addSoftBody3, _IDL _IDL _I16 _I16);
  3375. HL_PRIM void HL_NAME(btSoftRigidDynamicsWorld_removeSoftBody1)(_ref(btSoftRigidDynamicsWorld)* _this, _ref(btSoftBody)* body) {
  3376. _unref(_this)->removeSoftBody(_unref(body));
  3377. }
  3378. DEFINE_PRIM(_VOID, btSoftRigidDynamicsWorld_removeSoftBody1, _IDL _IDL);
  3379. HL_PRIM void HL_NAME(btSoftRigidDynamicsWorld_removeCollisionObject1)(_ref(btSoftRigidDynamicsWorld)* _this, _ref(btCollisionObject)* collisionObject) {
  3380. _unref(_this)->removeCollisionObject(_unref(collisionObject));
  3381. }
  3382. DEFINE_PRIM(_VOID, btSoftRigidDynamicsWorld_removeCollisionObject1, _IDL _IDL);
  3383. HL_PRIM _ref(btSoftBodyWorldInfo)* HL_NAME(btSoftRigidDynamicsWorld_getWorldInfo0)(_ref(btSoftRigidDynamicsWorld)* _this) {
  3384. return alloc_ref(new btSoftBodyWorldInfo(_unref(_this)->getWorldInfo()),btSoftBodyWorldInfo);
  3385. }
  3386. DEFINE_PRIM(_IDL, btSoftRigidDynamicsWorld_getWorldInfo0, _IDL);
  3387. HL_PRIM _ref(btSoftBodyArray)* HL_NAME(btSoftRigidDynamicsWorld_getSoftBodyArray0)(_ref(btSoftRigidDynamicsWorld)* _this) {
  3388. return alloc_ref(new btSoftBodyArray(_unref(_this)->getSoftBodyArray()),btSoftBodyArray);
  3389. }
  3390. DEFINE_PRIM(_IDL, btSoftRigidDynamicsWorld_getSoftBodyArray0, _IDL);
  3391. HL_PRIM _ref(btSoftBodyHelpers)* HL_NAME(btSoftBodyHelpers_new0)() {
  3392. return alloc_ref((new btSoftBodyHelpers()),btSoftBodyHelpers);
  3393. }
  3394. DEFINE_PRIM(_IDL, btSoftBodyHelpers_new0,);
  3395. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBodyHelpers_CreateRope5)(_ref(btSoftBodyHelpers)* _this, _ref(btSoftBodyWorldInfo)* worldInfo, _ref(btVector3)* from, _ref(btVector3)* to, int res, int fixeds) {
  3396. return alloc_ref((_unref(_this)->CreateRope(*_unref(worldInfo), *_unref(from), *_unref(to), res, fixeds)),btSoftBody);
  3397. }
  3398. DEFINE_PRIM(_IDL, btSoftBodyHelpers_CreateRope5, _IDL _IDL _IDL _IDL _I32 _I32);
  3399. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBodyHelpers_CreatePatch9)(_ref(btSoftBodyHelpers)* _this, _ref(btSoftBodyWorldInfo)* worldInfo, _ref(btVector3)* corner00, _ref(btVector3)* corner10, _ref(btVector3)* corner01, _ref(btVector3)* corner11, int resx, int resy, int fixeds, bool gendiags) {
  3400. return alloc_ref((_unref(_this)->CreatePatch(*_unref(worldInfo), *_unref(corner00), *_unref(corner10), *_unref(corner01), *_unref(corner11), resx, resy, fixeds, gendiags)),btSoftBody);
  3401. }
  3402. DEFINE_PRIM(_IDL, btSoftBodyHelpers_CreatePatch9, _IDL _IDL _IDL _IDL _IDL _IDL _I32 _I32 _I32 _BOOL);
  3403. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBodyHelpers_CreatePatchUV10)(_ref(btSoftBodyHelpers)* _this, _ref(btSoftBodyWorldInfo)* worldInfo, _ref(btVector3)* corner00, _ref(btVector3)* corner10, _ref(btVector3)* corner01, _ref(btVector3)* corner11, int resx, int resy, int fixeds, bool gendiags, float* tex_coords) {
  3404. return alloc_ref((_unref(_this)->CreatePatchUV(*_unref(worldInfo), *_unref(corner00), *_unref(corner10), *_unref(corner01), *_unref(corner11), resx, resy, fixeds, gendiags, tex_coords)),btSoftBody);
  3405. }
  3406. DEFINE_PRIM(_IDL, btSoftBodyHelpers_CreatePatchUV10, _IDL _IDL _IDL _IDL _IDL _IDL _I32 _I32 _I32 _BOOL _BYTES);
  3407. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBodyHelpers_CreateEllipsoid4)(_ref(btSoftBodyHelpers)* _this, _ref(btSoftBodyWorldInfo)* worldInfo, _ref(btVector3)* center, _ref(btVector3)* radius, int res) {
  3408. return alloc_ref((_unref(_this)->CreateEllipsoid(*_unref(worldInfo), *_unref(center), *_unref(radius), res)),btSoftBody);
  3409. }
  3410. DEFINE_PRIM(_IDL, btSoftBodyHelpers_CreateEllipsoid4, _IDL _IDL _IDL _IDL _I32);
  3411. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBodyHelpers_CreateFromTriMesh5)(_ref(btSoftBodyHelpers)* _this, _ref(btSoftBodyWorldInfo)* worldInfo, float* vertices, int* triangles, int ntriangles, bool randomizeConstraints) {
  3412. return alloc_ref((_unref(_this)->CreateFromTriMesh(*_unref(worldInfo), vertices, triangles, ntriangles, randomizeConstraints)),btSoftBody);
  3413. }
  3414. DEFINE_PRIM(_IDL, btSoftBodyHelpers_CreateFromTriMesh5, _IDL _IDL _BYTES _BYTES _I32 _BOOL);
  3415. HL_PRIM _ref(btSoftBody)* HL_NAME(btSoftBodyHelpers_CreateFromConvexHull4)(_ref(btSoftBodyHelpers)* _this, _ref(btSoftBodyWorldInfo)* worldInfo, _ref(btVector3)* vertices, int nvertices, bool randomizeConstraints) {
  3416. return alloc_ref((_unref(_this)->CreateFromConvexHull(*_unref(worldInfo), _unref(vertices), nvertices, randomizeConstraints)),btSoftBody);
  3417. }
  3418. DEFINE_PRIM(_IDL, btSoftBodyHelpers_CreateFromConvexHull4, _IDL _IDL _IDL _I32 _BOOL);
  3419. }