#ifndef NEWTON_DYNAMICS_DYNAMICS_BMX_DEBUG_MT_WIN32_X86_H
#define NEWTON_DYNAMICS_DYNAMICS_BMX_DEBUG_MT_WIN32_X86_H

#include <brl.mod/blitz.mod/.bmx/blitz.bmx.debug.mt.win32.x86.h>
#include "common.bmx.debug.mt.win32.x86.h"
int __bb_newton_dynamics_dynamics();
struct newton_dynamics_TNWorld_obj;
struct newton_dynamics_TNRayCastDelegate_obj;
struct newton_dynamics_TNCollision_obj;
struct newton_dynamics_TNTreeCollision_obj;
struct newton_dynamics_TNBody_obj;
struct newton_dynamics_TNMesh_obj;
struct newton_dynamics_TNMatrix_obj;
void _newton_dynamics_TNWorld_New(struct newton_dynamics_TNWorld_obj* o);
typedef struct newton_dynamics_TNWorld_obj* (*newton_dynamics_TNWorld_Create_TTNWorld_f)();
struct newton_dynamics_TNWorld_obj* newton_dynamics_TNWorld_Create_TTNWorld();
typedef struct newton_dynamics_TNBody_obj* (*newton_dynamics_TNWorld_CreateDynamicBody_TTNCollisionTTNMatrixTTNBody_m)(struct newton_dynamics_TNWorld_obj*,struct newton_dynamics_TNCollision_obj*,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNBody_obj*);
struct newton_dynamics_TNBody_obj* _newton_dynamics_TNWorld_CreateDynamicBody_TTNCollisionTTNMatrixTTNBody(struct newton_dynamics_TNWorld_obj*,struct newton_dynamics_TNCollision_obj*,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNBody_obj*);
typedef struct newton_dynamics_TNTreeCollision_obj* (*newton_dynamics_TNWorld_CreateTreeCollision_iTTNTreeCollision_m)(struct newton_dynamics_TNWorld_obj*,BBINT,struct newton_dynamics_TNTreeCollision_obj*);
struct newton_dynamics_TNTreeCollision_obj* _newton_dynamics_TNWorld_CreateTreeCollision_iTTNTreeCollision(struct newton_dynamics_TNWorld_obj*,BBINT,struct newton_dynamics_TNTreeCollision_obj*);
typedef struct newton_dynamics_TNCollision_obj* (*newton_dynamics_TNWorld_CreateSphere_fiTTNMatrixTTNCollision_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBINT,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNCollision_obj*);
struct newton_dynamics_TNCollision_obj* _newton_dynamics_TNWorld_CreateSphere_fiTTNMatrixTTNCollision(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBINT,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNCollision_obj*);
typedef struct newton_dynamics_TNCollision_obj* (*newton_dynamics_TNWorld_CreateBox_fffiTTNMatrixTTNCollision_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBINT,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNCollision_obj*);
struct newton_dynamics_TNCollision_obj* _newton_dynamics_TNWorld_CreateBox_fffiTTNMatrixTTNCollision(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBINT,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNCollision_obj*);
typedef struct newton_dynamics_TNCollision_obj* (*newton_dynamics_TNWorld_CreateCylinder_ffiTTNMatrixTTNCollision_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBFLOAT,BBINT,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNCollision_obj*);
struct newton_dynamics_TNCollision_obj* _newton_dynamics_TNWorld_CreateCylinder_ffiTTNMatrixTTNCollision(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBFLOAT,BBINT,struct newton_dynamics_TNMatrix_obj*,struct newton_dynamics_TNCollision_obj*);
typedef struct newton_dynamics_TNMesh_obj* (*newton_dynamics_TNWorld_CreateMesh_m)(struct newton_dynamics_TNWorld_obj*);
struct newton_dynamics_TNMesh_obj* _newton_dynamics_TNWorld_CreateMesh(struct newton_dynamics_TNWorld_obj*);
typedef void (*newton_dynamics_TNWorld_SetFrictionModel_i_m)(struct newton_dynamics_TNWorld_obj*,BBINT);
void _newton_dynamics_TNWorld_SetFrictionModel_i(struct newton_dynamics_TNWorld_obj*,BBINT);
typedef void (*newton_dynamics_TNWorld_SetMinimumFrameRate_f_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT);
void _newton_dynamics_TNWorld_SetMinimumFrameRate_f(struct newton_dynamics_TNWorld_obj*,BBFLOAT);
typedef void (*newton_dynamics_TNWorld_SetContactMergeTolerance_f_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT);
void _newton_dynamics_TNWorld_SetContactMergeTolerance_f(struct newton_dynamics_TNWorld_obj*,BBFLOAT);
typedef void (*newton_dynamics_TNWorld_InvalidateCache_m)(struct newton_dynamics_TNWorld_obj*);
void _newton_dynamics_TNWorld_InvalidateCache(struct newton_dynamics_TNWorld_obj*);
typedef void (*newton_dynamics_TNWorld_Update_f_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT);
void _newton_dynamics_TNWorld_Update_f(struct newton_dynamics_TNWorld_obj*,BBFLOAT);
typedef BBINT (*newton_dynamics_TNWorld_GetBodyCount_m)(struct newton_dynamics_TNWorld_obj*);
BBINT _newton_dynamics_TNWorld_GetBodyCount(struct newton_dynamics_TNWorld_obj*);
typedef BBINT (*newton_dynamics_TNWorld_GetConstraintCount_m)(struct newton_dynamics_TNWorld_obj*);
BBINT _newton_dynamics_TNWorld_GetConstraintCount(struct newton_dynamics_TNWorld_obj*);
typedef void (*newton_dynamics_TNWorld_RayCast_ffffffTTNRayCastDelegatei_m)(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,struct newton_dynamics_TNRayCastDelegate_obj*,BBINT);
void _newton_dynamics_TNWorld_RayCast_ffffffTTNRayCastDelegatei(struct newton_dynamics_TNWorld_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,struct newton_dynamics_TNRayCastDelegate_obj*,BBINT);
typedef void (*newton_dynamics_TNWorld_Destroy_m)(struct newton_dynamics_TNWorld_obj*);
void _newton_dynamics_TNWorld_Destroy(struct newton_dynamics_TNWorld_obj*);
struct BBClass_newton_dynamics_TNWorld {
	BBClass*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNWorld_Create_TTNWorld_f f_Create_TTNWorld;
	newton_dynamics_TNWorld_CreateDynamicBody_TTNCollisionTTNMatrixTTNBody_m m_CreateDynamicBody_TTNCollisionTTNMatrixTTNBody;
	newton_dynamics_TNWorld_CreateTreeCollision_iTTNTreeCollision_m m_CreateTreeCollision_iTTNTreeCollision;
	newton_dynamics_TNWorld_CreateSphere_fiTTNMatrixTTNCollision_m m_CreateSphere_fiTTNMatrixTTNCollision;
	newton_dynamics_TNWorld_CreateBox_fffiTTNMatrixTTNCollision_m m_CreateBox_fffiTTNMatrixTTNCollision;
	newton_dynamics_TNWorld_CreateCylinder_ffiTTNMatrixTTNCollision_m m_CreateCylinder_ffiTTNMatrixTTNCollision;
	newton_dynamics_TNWorld_CreateMesh_m m_CreateMesh;
	newton_dynamics_TNWorld_SetFrictionModel_i_m m_SetFrictionModel_i;
	newton_dynamics_TNWorld_SetMinimumFrameRate_f_m m_SetMinimumFrameRate_f;
	newton_dynamics_TNWorld_SetContactMergeTolerance_f_m m_SetContactMergeTolerance_f;
	newton_dynamics_TNWorld_InvalidateCache_m m_InvalidateCache;
	newton_dynamics_TNWorld_Update_f_m m_Update_f;
	newton_dynamics_TNWorld_GetBodyCount_m m_GetBodyCount;
	newton_dynamics_TNWorld_GetConstraintCount_m m_GetConstraintCount;
	newton_dynamics_TNWorld_RayCast_ffffffTTNRayCastDelegatei_m m_RayCast_ffffffTTNRayCastDelegatei;
	newton_dynamics_TNWorld_Destroy_m m_Destroy;
};

struct newton_dynamics_TNWorld_obj {
	struct BBClass_newton_dynamics_TNWorld* clas;
	BBBYTE* _newton_dynamics_tnworld_worldptr;
};
extern struct BBClass_newton_dynamics_TNWorld newton_dynamics_TNWorld;
void _newton_dynamics_TNRayCastDelegate_New(struct newton_dynamics_TNRayCastDelegate_obj* o);
typedef BBINT (*newton_dynamics_TNRayCastDelegate_OnPreFilter_TTNBodyTTNCollision_m)(struct newton_dynamics_TNRayCastDelegate_obj*,struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNCollision_obj*);
BBINT _newton_dynamics_TNRayCastDelegate_OnPreFilter_TTNBodyTTNCollision(struct newton_dynamics_TNRayCastDelegate_obj*,struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNCollision_obj*);
typedef BBFLOAT (*newton_dynamics_TNRayCastDelegate_OnFilter_TTNBodyTTNCollisionpfpff_m)(struct newton_dynamics_TNRayCastDelegate_obj*,struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNCollision_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT);
BBFLOAT _newton_dynamics_TNRayCastDelegate_OnFilter_TTNBodyTTNCollisionpfpff(struct newton_dynamics_TNRayCastDelegate_obj*,struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNCollision_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT);
typedef BBINT (*newton_dynamics_TNRayCastDelegate__prefilterCallback_i_pbpbpb_f)(BBBYTE*,BBBYTE*,BBBYTE*);
BBINT newton_dynamics_TNRayCastDelegate__prefilterCallback_i_pbpbpb(BBBYTE*,BBBYTE*,BBBYTE*);
typedef BBFLOAT (*newton_dynamics_TNRayCastDelegate__filterCallback_f_pbpbpfpfpbf_f)(BBBYTE*,BBBYTE*,BBFLOAT*,BBFLOAT*,BBBYTE*,BBFLOAT);
BBFLOAT newton_dynamics_TNRayCastDelegate__filterCallback_f_pbpbpfpfpbf(BBBYTE*,BBBYTE*,BBFLOAT*,BBFLOAT*,BBBYTE*,BBFLOAT);
struct BBClass_newton_dynamics_TNRayCastDelegate {
	BBClass*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNRayCastDelegate_OnPreFilter_TTNBodyTTNCollision_m m_OnPreFilter_TTNBodyTTNCollision;
	newton_dynamics_TNRayCastDelegate_OnFilter_TTNBodyTTNCollisionpfpff_m m_OnFilter_TTNBodyTTNCollisionpfpff;
	newton_dynamics_TNRayCastDelegate__prefilterCallback_i_pbpbpb_f f__prefilterCallback_i_pbpbpb;
	newton_dynamics_TNRayCastDelegate__filterCallback_f_pbpbpfpfpbf_f f__filterCallback_f_pbpbpfpfpbf;
};

struct newton_dynamics_TNRayCastDelegate_obj {
	struct BBClass_newton_dynamics_TNRayCastDelegate* clas;
	BBINT _newton_dynamics_tnraycastdelegate_prefilter;
};
extern struct BBClass_newton_dynamics_TNRayCastDelegate newton_dynamics_TNRayCastDelegate;
void _newton_dynamics_TNCollision_New(struct newton_dynamics_TNCollision_obj* o);
typedef void (*newton_dynamics_TNCollision_Destroy_m)(struct newton_dynamics_TNCollision_obj*);
void _newton_dynamics_TNCollision_Destroy(struct newton_dynamics_TNCollision_obj*);
struct BBClass_newton_dynamics_TNCollision {
	BBClass*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNCollision_Destroy_m m_Destroy;
};

struct newton_dynamics_TNCollision_obj {
	struct BBClass_newton_dynamics_TNCollision* clas;
	BBBYTE* _newton_dynamics_tncollision_collisionptr;
};
extern struct BBClass_newton_dynamics_TNCollision newton_dynamics_TNCollision;
void _newton_dynamics_TNTreeCollision_New(struct newton_dynamics_TNTreeCollision_obj* o);
typedef void (*newton_dynamics_TNTreeCollision_BeginBuild_m)(struct newton_dynamics_TNTreeCollision_obj*);
void _newton_dynamics_TNTreeCollision_BeginBuild(struct newton_dynamics_TNTreeCollision_obj*);
typedef void (*newton_dynamics_TNTreeCollision_EndBuild_i_m)(struct newton_dynamics_TNTreeCollision_obj*,BBINT);
void _newton_dynamics_TNTreeCollision_EndBuild_i(struct newton_dynamics_TNTreeCollision_obj*,BBINT);
typedef void (*newton_dynamics_TNTreeCollision_AddFace_ipfii_m)(struct newton_dynamics_TNTreeCollision_obj*,BBINT,BBFLOAT*,BBINT,BBINT);
void _newton_dynamics_TNTreeCollision_AddFace_ipfii(struct newton_dynamics_TNTreeCollision_obj*,BBINT,BBFLOAT*,BBINT,BBINT);
struct BBClass_newton_dynamics_TNTreeCollision {
	struct BBClass_newton_dynamics_TNCollision*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNCollision_Destroy_m m_Destroy;
	newton_dynamics_TNTreeCollision_BeginBuild_m m_BeginBuild;
	newton_dynamics_TNTreeCollision_EndBuild_i_m m_EndBuild_i;
	newton_dynamics_TNTreeCollision_AddFace_ipfii_m m_AddFace_ipfii;
};

struct newton_dynamics_TNTreeCollision_obj {
	struct BBClass_newton_dynamics_TNTreeCollision* clas;
	BBBYTE* _newton_dynamics_tncollision_collisionptr;
};
extern struct BBClass_newton_dynamics_TNTreeCollision newton_dynamics_TNTreeCollision;
void _newton_dynamics_TNBody_New(struct newton_dynamics_TNBody_obj* o);
typedef void (*newton_dynamics_TNBody_OnForceAndTorque_fi_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBINT);
void _newton_dynamics_TNBody_OnForceAndTorque_fi(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBINT);
typedef void (*newton_dynamics_TNBody_OnTransform_pfi_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBINT);
void _newton_dynamics_TNBody_OnTransform_pfi(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBINT);
typedef void (*newton_dynamics_TNBody_SetMatrix_TTNMatrix_m)(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
void _newton_dynamics_TNBody_SetMatrix_TTNMatrix(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
typedef void (*newton_dynamics_TNBody_GetMatrix_TTNMatrix_m)(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
void _newton_dynamics_TNBody_GetMatrix_TTNMatrix(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
typedef void (*newton_dynamics_TNBody_GetMassMatrix_vfvfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetMassMatrix_vfvfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetRotation_vfvfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetRotation_vfvfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetInvMass_vfvfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetInvMass_vfvfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetInertiaMatrix_TTNMatrix_m)(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
void _newton_dynamics_TNBody_GetInertiaMatrix_TTNMatrix(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
typedef void (*newton_dynamics_TNBody_GetInvInertiaMatrix_TTNMatrix_m)(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
void _newton_dynamics_TNBody_GetInvInertiaMatrix_TTNMatrix(struct newton_dynamics_TNBody_obj*,struct newton_dynamics_TNMatrix_obj*);
typedef void (*newton_dynamics_TNBody_GetOmega_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetOmega_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetVelocity_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetVelocity_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetForce_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetForce_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetTorque_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetTorque_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetForceAcc_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetForceAcc_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetTorqueAcc_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetTorqueAcc_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetCentreOfMass_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetCentreOfMass_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_GetAngularDamping_vfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_GetAngularDamping_vfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_NewtonBodyGetAABB_vfvfvfvfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_NewtonBodyGetAABB_vfvfvfvfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody_SetAngularDamping_fff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_SetAngularDamping_fff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_SetForceAndTorqueCallback_F_TTNBodyfi_v__m)(struct newton_dynamics_TNBody_obj*,void(* bbt_callback)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBINT));
void _newton_dynamics_TNBody_SetForceAndTorqueCallback_F_TTNBodyfi_v_(struct newton_dynamics_TNBody_obj*,void(* bbt_callback)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBINT));
typedef void (*newton_dynamics_TNBody_SetTransformCallback_F_TTNBodypfi_v__m)(struct newton_dynamics_TNBody_obj*,void(* bbt_callback)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBINT));
void _newton_dynamics_TNBody_SetTransformCallback_F_TTNBodypfi_v_(struct newton_dynamics_TNBody_obj*,void(* bbt_callback)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBINT));
typedef void (*newton_dynamics_TNBody_SetOmega_ffff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_SetOmega_ffff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_SetForce_ffff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_SetForce_ffff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_SetVelocity_ffff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_SetVelocity_ffff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_SetTorque_ffff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_SetTorque_ffff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_SetMassProperties_fTTNCollision_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,struct newton_dynamics_TNCollision_obj*);
void _newton_dynamics_TNBody_SetMassProperties_fTTNCollision(struct newton_dynamics_TNBody_obj*,BBFLOAT,struct newton_dynamics_TNCollision_obj*);
typedef void (*newton_dynamics_TNBody_SetLinearDamping_f_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT);
void _newton_dynamics_TNBody_SetLinearDamping_f(struct newton_dynamics_TNBody_obj*,BBFLOAT);
typedef BBINT (*newton_dynamics_TNBody_GetType_m)(struct newton_dynamics_TNBody_obj*);
BBINT _newton_dynamics_TNBody_GetType(struct newton_dynamics_TNBody_obj*);
typedef BBINT (*newton_dynamics_TNBody_GetCollidable_m)(struct newton_dynamics_TNBody_obj*);
BBINT _newton_dynamics_TNBody_GetCollidable(struct newton_dynamics_TNBody_obj*);
typedef void (*newton_dynamics_TNBody_SetCollidable_i_m)(struct newton_dynamics_TNBody_obj*,BBINT);
void _newton_dynamics_TNBody_SetCollidable_i(struct newton_dynamics_TNBody_obj*,BBINT);
typedef void (*newton_dynamics_TNBody_AddForce_fff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_AddForce_fff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_AddTorque_fff_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT);
void _newton_dynamics_TNBody_AddTorque_fff(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT);
typedef void (*newton_dynamics_TNBody_CalculateInverseDynamicsForce_ffffvfvfvf_m)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNBody_CalculateInverseDynamicsForce_ffffvfvfvf(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNBody__forceAndTorqueCallback_v_pbfi_f)(BBBYTE*,BBFLOAT,BBINT);
void newton_dynamics_TNBody__forceAndTorqueCallback_v_pbfi(BBBYTE*,BBFLOAT,BBINT);
typedef void (*newton_dynamics_TNBody__defaultForceAndTorqueCallback_v_pbfi_f)(BBBYTE*,BBFLOAT,BBINT);
void newton_dynamics_TNBody__defaultForceAndTorqueCallback_v_pbfi(BBBYTE*,BBFLOAT,BBINT);
typedef void (*newton_dynamics_TNBody__transformCallback_v_pbpfi_f)(BBBYTE*,BBFLOAT*,BBINT);
void newton_dynamics_TNBody__transformCallback_v_pbpfi(BBBYTE*,BBFLOAT*,BBINT);
typedef void (*newton_dynamics_TNBody__defaultTransformCallback_v_pbpfi_f)(BBBYTE*,BBFLOAT*,BBINT);
void newton_dynamics_TNBody__defaultTransformCallback_v_pbpfi(BBBYTE*,BBFLOAT*,BBINT);
typedef void (*newton_dynamics_TNBody_Destroy_m)(struct newton_dynamics_TNBody_obj*);
void _newton_dynamics_TNBody_Destroy(struct newton_dynamics_TNBody_obj*);
struct BBClass_newton_dynamics_TNBody {
	BBClass*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNBody_OnForceAndTorque_fi_m m_OnForceAndTorque_fi;
	newton_dynamics_TNBody_OnTransform_pfi_m m_OnTransform_pfi;
	newton_dynamics_TNBody_SetMatrix_TTNMatrix_m m_SetMatrix_TTNMatrix;
	newton_dynamics_TNBody_GetMatrix_TTNMatrix_m m_GetMatrix_TTNMatrix;
	newton_dynamics_TNBody_GetMassMatrix_vfvfvfvf_m m_GetMassMatrix_vfvfvfvf;
	newton_dynamics_TNBody_GetRotation_vfvfvfvf_m m_GetRotation_vfvfvfvf;
	newton_dynamics_TNBody_GetInvMass_vfvfvfvf_m m_GetInvMass_vfvfvfvf;
	newton_dynamics_TNBody_GetInertiaMatrix_TTNMatrix_m m_GetInertiaMatrix_TTNMatrix;
	newton_dynamics_TNBody_GetInvInertiaMatrix_TTNMatrix_m m_GetInvInertiaMatrix_TTNMatrix;
	newton_dynamics_TNBody_GetOmega_vfvfvf_m m_GetOmega_vfvfvf;
	newton_dynamics_TNBody_GetVelocity_vfvfvf_m m_GetVelocity_vfvfvf;
	newton_dynamics_TNBody_GetForce_vfvfvf_m m_GetForce_vfvfvf;
	newton_dynamics_TNBody_GetTorque_vfvfvf_m m_GetTorque_vfvfvf;
	newton_dynamics_TNBody_GetForceAcc_vfvfvf_m m_GetForceAcc_vfvfvf;
	newton_dynamics_TNBody_GetTorqueAcc_vfvfvf_m m_GetTorqueAcc_vfvfvf;
	newton_dynamics_TNBody_GetCentreOfMass_vfvfvf_m m_GetCentreOfMass_vfvfvf;
	newton_dynamics_TNBody_GetAngularDamping_vfvfvf_m m_GetAngularDamping_vfvfvf;
	newton_dynamics_TNBody_NewtonBodyGetAABB_vfvfvfvfvfvf_m m_NewtonBodyGetAABB_vfvfvfvfvfvf;
	newton_dynamics_TNBody_SetAngularDamping_fff_m m_SetAngularDamping_fff;
	newton_dynamics_TNBody_SetForceAndTorqueCallback_F_TTNBodyfi_v__m m_SetForceAndTorqueCallback_F_TTNBodyfi_v_;
	newton_dynamics_TNBody_SetTransformCallback_F_TTNBodypfi_v__m m_SetTransformCallback_F_TTNBodypfi_v_;
	newton_dynamics_TNBody_SetOmega_ffff_m m_SetOmega_ffff;
	newton_dynamics_TNBody_SetForce_ffff_m m_SetForce_ffff;
	newton_dynamics_TNBody_SetVelocity_ffff_m m_SetVelocity_ffff;
	newton_dynamics_TNBody_SetTorque_ffff_m m_SetTorque_ffff;
	newton_dynamics_TNBody_SetMassProperties_fTTNCollision_m m_SetMassProperties_fTTNCollision;
	newton_dynamics_TNBody_SetLinearDamping_f_m m_SetLinearDamping_f;
	newton_dynamics_TNBody_GetType_m m_GetType;
	newton_dynamics_TNBody_GetCollidable_m m_GetCollidable;
	newton_dynamics_TNBody_SetCollidable_i_m m_SetCollidable_i;
	newton_dynamics_TNBody_AddForce_fff_m m_AddForce_fff;
	newton_dynamics_TNBody_AddTorque_fff_m m_AddTorque_fff;
	newton_dynamics_TNBody_CalculateInverseDynamicsForce_ffffvfvfvf_m m_CalculateInverseDynamicsForce_ffffvfvfvf;
	newton_dynamics_TNBody__forceAndTorqueCallback_v_pbfi_f f__forceAndTorqueCallback_v_pbfi;
	newton_dynamics_TNBody__defaultForceAndTorqueCallback_v_pbfi_f f__defaultForceAndTorqueCallback_v_pbfi;
	newton_dynamics_TNBody__transformCallback_v_pbpfi_f f__transformCallback_v_pbpfi;
	newton_dynamics_TNBody__defaultTransformCallback_v_pbpfi_f f__defaultTransformCallback_v_pbpfi;
	newton_dynamics_TNBody_Destroy_m m_Destroy;
};

struct newton_dynamics_TNBody_obj {
	struct BBClass_newton_dynamics_TNBody* clas;
	BBBYTE* _newton_dynamics_tnbody_bodyptr;
	void(* _newton_dynamics_tnbody__fatcallback)(struct newton_dynamics_TNBody_obj*,BBFLOAT,BBINT);
	void(* _newton_dynamics_tnbody__transcallback)(struct newton_dynamics_TNBody_obj*,BBFLOAT*,BBINT);
};
extern struct BBClass_newton_dynamics_TNBody newton_dynamics_TNBody;
void _newton_dynamics_TNMesh_New(struct newton_dynamics_TNMesh_obj* o);
typedef void (*newton_dynamics_TNMesh_ApplyTransform_TTNMatrix_m)(struct newton_dynamics_TNMesh_obj*,struct newton_dynamics_TNMatrix_obj*);
void _newton_dynamics_TNMesh_ApplyTransform_TTNMatrix(struct newton_dynamics_TNMesh_obj*,struct newton_dynamics_TNMatrix_obj*);
typedef void (*newton_dynamics_TNMesh_CalculateOOBB_TTNMatrixvfvfvf_m)(struct newton_dynamics_TNMesh_obj*,struct newton_dynamics_TNMatrix_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNMesh_CalculateOOBB_TTNMatrixvfvfvf(struct newton_dynamics_TNMesh_obj*,struct newton_dynamics_TNMatrix_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
typedef void (*newton_dynamics_TNMesh_CalculateVertexNormals_f_m)(struct newton_dynamics_TNMesh_obj*,BBFLOAT);
void _newton_dynamics_TNMesh_CalculateVertexNormals_f(struct newton_dynamics_TNMesh_obj*,BBFLOAT);
typedef void (*newton_dynamics_TNMesh_ApplySphericalMapping_i_m)(struct newton_dynamics_TNMesh_obj*,BBINT);
void _newton_dynamics_TNMesh_ApplySphericalMapping_i(struct newton_dynamics_TNMesh_obj*,BBINT);
typedef void (*newton_dynamics_TNMesh_ApplyCylindricalMapping_ii_m)(struct newton_dynamics_TNMesh_obj*,BBINT,BBINT);
void _newton_dynamics_TNMesh_ApplyCylindricalMapping_ii(struct newton_dynamics_TNMesh_obj*,BBINT,BBINT);
typedef void (*newton_dynamics_TNMesh_ApplyBoxMapping_iii_m)(struct newton_dynamics_TNMesh_obj*,BBINT,BBINT,BBINT);
void _newton_dynamics_TNMesh_ApplyBoxMapping_iii(struct newton_dynamics_TNMesh_obj*,BBINT,BBINT,BBINT);
typedef BBINT (*newton_dynamics_TNMesh_IsOpenMesh_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_IsOpenMesh(struct newton_dynamics_TNMesh_obj*);
typedef void (*newton_dynamics_TNMesh_FixTJoints_m)(struct newton_dynamics_TNMesh_obj*);
void _newton_dynamics_TNMesh_FixTJoints(struct newton_dynamics_TNMesh_obj*);
typedef void (*newton_dynamics_TNMesh_Polygonize_m)(struct newton_dynamics_TNMesh_obj*);
void _newton_dynamics_TNMesh_Polygonize(struct newton_dynamics_TNMesh_obj*);
typedef void (*newton_dynamics_TNMesh_Triangulate_m)(struct newton_dynamics_TNMesh_obj*);
void _newton_dynamics_TNMesh_Triangulate(struct newton_dynamics_TNMesh_obj*);
typedef void (*newton_dynamics_TNMesh_BeginFace_m)(struct newton_dynamics_TNMesh_obj*);
void _newton_dynamics_TNMesh_BeginFace(struct newton_dynamics_TNMesh_obj*);
typedef void (*newton_dynamics_TNMesh_AddFace_ipfii_m)(struct newton_dynamics_TNMesh_obj*,BBINT,BBFLOAT*,BBINT,BBINT);
void _newton_dynamics_TNMesh_AddFace_ipfii(struct newton_dynamics_TNMesh_obj*,BBINT,BBFLOAT*,BBINT,BBINT);
typedef void (*newton_dynamics_TNMesh_EndFace_m)(struct newton_dynamics_TNMesh_obj*);
void _newton_dynamics_TNMesh_EndFace(struct newton_dynamics_TNMesh_obj*);
typedef BBINT (*newton_dynamics_TNMesh_GetTotalFaceCount_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_GetTotalFaceCount(struct newton_dynamics_TNMesh_obj*);
typedef BBINT (*newton_dynamics_TNMesh_GetTotalIndexCount_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_GetTotalIndexCount(struct newton_dynamics_TNMesh_obj*);
typedef BBINT (*newton_dynamics_TNMesh_GetPointCount_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_GetPointCount(struct newton_dynamics_TNMesh_obj*);
typedef BBINT (*newton_dynamics_TNMesh_GetPointStrideInByte_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_GetPointStrideInByte(struct newton_dynamics_TNMesh_obj*);
typedef BBDOUBLE* (*newton_dynamics_TNMesh_GetPointArray_m)(struct newton_dynamics_TNMesh_obj*);
BBDOUBLE* _newton_dynamics_TNMesh_GetPointArray(struct newton_dynamics_TNMesh_obj*);
typedef BBDOUBLE* (*newton_dynamics_TNMesh_GetNormalArray_m)(struct newton_dynamics_TNMesh_obj*);
BBDOUBLE* _newton_dynamics_TNMesh_GetNormalArray(struct newton_dynamics_TNMesh_obj*);
typedef BBDOUBLE* (*newton_dynamics_TNMesh_GetUV0Array_m)(struct newton_dynamics_TNMesh_obj*);
BBDOUBLE* _newton_dynamics_TNMesh_GetUV0Array(struct newton_dynamics_TNMesh_obj*);
typedef BBDOUBLE* (*newton_dynamics_TNMesh_GetUV1Array_m)(struct newton_dynamics_TNMesh_obj*);
BBDOUBLE* _newton_dynamics_TNMesh_GetUV1Array(struct newton_dynamics_TNMesh_obj*);
typedef BBINT (*newton_dynamics_TNMesh_GetVertexCount_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_GetVertexCount(struct newton_dynamics_TNMesh_obj*);
typedef BBINT (*newton_dynamics_TNMesh_GetVertexStrideInByte_m)(struct newton_dynamics_TNMesh_obj*);
BBINT _newton_dynamics_TNMesh_GetVertexStrideInByte(struct newton_dynamics_TNMesh_obj*);
typedef BBDOUBLE* (*newton_dynamics_TNMesh_MeshGetVertexArray_m)(struct newton_dynamics_TNMesh_obj*);
BBDOUBLE* _newton_dynamics_TNMesh_MeshGetVertexArray(struct newton_dynamics_TNMesh_obj*);
typedef void (*newton_dynamics_TNMesh_Destroy_m)(struct newton_dynamics_TNMesh_obj*);
void _newton_dynamics_TNMesh_Destroy(struct newton_dynamics_TNMesh_obj*);
struct BBClass_newton_dynamics_TNMesh {
	BBClass*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNMesh_ApplyTransform_TTNMatrix_m m_ApplyTransform_TTNMatrix;
	newton_dynamics_TNMesh_CalculateOOBB_TTNMatrixvfvfvf_m m_CalculateOOBB_TTNMatrixvfvfvf;
	newton_dynamics_TNMesh_CalculateVertexNormals_f_m m_CalculateVertexNormals_f;
	newton_dynamics_TNMesh_ApplySphericalMapping_i_m m_ApplySphericalMapping_i;
	newton_dynamics_TNMesh_ApplyCylindricalMapping_ii_m m_ApplyCylindricalMapping_ii;
	newton_dynamics_TNMesh_ApplyBoxMapping_iii_m m_ApplyBoxMapping_iii;
	newton_dynamics_TNMesh_IsOpenMesh_m m_IsOpenMesh;
	newton_dynamics_TNMesh_FixTJoints_m m_FixTJoints;
	newton_dynamics_TNMesh_Polygonize_m m_Polygonize;
	newton_dynamics_TNMesh_Triangulate_m m_Triangulate;
	newton_dynamics_TNMesh_BeginFace_m m_BeginFace;
	newton_dynamics_TNMesh_AddFace_ipfii_m m_AddFace_ipfii;
	newton_dynamics_TNMesh_EndFace_m m_EndFace;
	newton_dynamics_TNMesh_GetTotalFaceCount_m m_GetTotalFaceCount;
	newton_dynamics_TNMesh_GetTotalIndexCount_m m_GetTotalIndexCount;
	newton_dynamics_TNMesh_GetPointCount_m m_GetPointCount;
	newton_dynamics_TNMesh_GetPointStrideInByte_m m_GetPointStrideInByte;
	newton_dynamics_TNMesh_GetPointArray_m m_GetPointArray;
	newton_dynamics_TNMesh_GetNormalArray_m m_GetNormalArray;
	newton_dynamics_TNMesh_GetUV0Array_m m_GetUV0Array;
	newton_dynamics_TNMesh_GetUV1Array_m m_GetUV1Array;
	newton_dynamics_TNMesh_GetVertexCount_m m_GetVertexCount;
	newton_dynamics_TNMesh_GetVertexStrideInByte_m m_GetVertexStrideInByte;
	newton_dynamics_TNMesh_MeshGetVertexArray_m m_MeshGetVertexArray;
	newton_dynamics_TNMesh_Destroy_m m_Destroy;
};

struct newton_dynamics_TNMesh_obj {
	struct BBClass_newton_dynamics_TNMesh* clas;
	BBBYTE* _newton_dynamics_tnmesh_meshptr;
};
extern struct BBClass_newton_dynamics_TNMesh newton_dynamics_TNMesh;
void _newton_dynamics_TNMatrix_New(struct newton_dynamics_TNMatrix_obj* o);
typedef struct newton_dynamics_TNMatrix_obj* (*newton_dynamics_TNMatrix_GetIdentityMatrix_TTNMatrix_f)();
struct newton_dynamics_TNMatrix_obj* newton_dynamics_TNMatrix_GetIdentityMatrix_TTNMatrix();
typedef void (*newton_dynamics_TNMatrix_GetEulerAngles_vfvfvfvfvfvf_m)(struct newton_dynamics_TNMatrix_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
void _newton_dynamics_TNMatrix_GetEulerAngles_vfvfvfvfvfvf(struct newton_dynamics_TNMatrix_obj*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*,BBFLOAT*);
struct BBClass_newton_dynamics_TNMatrix {
	BBClass*  super;
	void      (*free)( BBObject *o );
	BBDebugScope* debug_scope;
	unsigned int instance_size;
	void      (*ctor)( BBOBJECT o );
	void      (*dtor)( BBOBJECT o );
	BBSTRING  (*ToString)( BBOBJECT x );
	int       (*Compare)( BBOBJECT x,BBOBJECT y );
	BBOBJECT  (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
	BBINTERFACETABLE itable;
	void*     extra;
	unsigned int obj_size;
	newton_dynamics_TNMatrix_GetIdentityMatrix_TTNMatrix_f f_GetIdentityMatrix_TTNMatrix;
	newton_dynamics_TNMatrix_GetEulerAngles_vfvfvfvfvfvf_m m_GetEulerAngles_vfvfvfvfvfvf;
};

struct newton_dynamics_TNMatrix_obj {
	struct BBClass_newton_dynamics_TNMatrix* clas;
	BBFLOAT _newton_dynamics_tnmatrix_frontx;
	BBFLOAT _newton_dynamics_tnmatrix_fronty;
	BBFLOAT _newton_dynamics_tnmatrix_frontz;
	BBFLOAT _newton_dynamics_tnmatrix_frontw;
	BBFLOAT _newton_dynamics_tnmatrix_upx;
	BBFLOAT _newton_dynamics_tnmatrix_upy;
	BBFLOAT _newton_dynamics_tnmatrix_upz;
	BBFLOAT _newton_dynamics_tnmatrix_upw;
	BBFLOAT _newton_dynamics_tnmatrix_rightx;
	BBFLOAT _newton_dynamics_tnmatrix_righty;
	BBFLOAT _newton_dynamics_tnmatrix_rightz;
	BBFLOAT _newton_dynamics_tnmatrix_rightw;
	BBFLOAT _newton_dynamics_tnmatrix_positx;
	BBFLOAT _newton_dynamics_tnmatrix_posity;
	BBFLOAT _newton_dynamics_tnmatrix_positz;
	BBFLOAT _newton_dynamics_tnmatrix_positw;
};
extern struct BBClass_newton_dynamics_TNMatrix newton_dynamics_TNMatrix;
extern struct newton_dynamics_TNBody_obj* NewtonBodyGetUserData(BBBYTE* bbt_body);
extern struct newton_dynamics_TNCollision_obj* NewtonCollisionGetUserData(BBBYTE* bbt_coll);
extern struct newton_dynamics_TNRayCastDelegate_obj* bmx_newtondynamics_RayCastDelegateFromPtr(BBBYTE* bbt_del);

#endif
