All pastes #926941 Raw Edit

ode.pxd

public text v1 · immutable
·published 2008-03-03 22:33 UTC
rendered paste body
# ODE Declarations
#
# Copyright (C) 2006,2007,2008 PySoy Group
#
#  This program is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program; if not, see http://www.gnu.org/licenses
#
# $Id: ode.pxd 971 2008-02-23 05:15:44Z DavidCzech $

cdef extern from "ode/ode.h" :
  ctypedef enum :
    #common
    dEpsilon
    dInfinity
    
    #joint types
    dJointTypeNone
    dJointTypeBall
    dJointTypeHinge
    dJointTypeSlider
    dJointTypeContact
    dJointTypeUniversal
    dJointTypeHinge2
    dJointTypeFixed
    dJointTypeNull
    dJointTypeAMotor
    dJointTypeLMotor
    dJointTypePlane2D
    dJointTypePR

    #joint params
    dParamLoStop
    dParamHiStop
    dParamVel
    dParamFMax
    dParamFudgeFactor
    dParamBounce
    dParamCFM
    dParamStopERP
    dParamStopCFM
    dParamSuspensionERP
    dParamSuspensionCFM

    #angular motor modes
    dAMotorUser
    dAMotorEuler

    #contact surface modes
    dContactApprox0
    dContactApprox1
    dContactApprox1_1
    dContactApprox1_2
    dContactBounce
    dContactFDir1
    dContactMotion1
    dContactMotion2
    dContactMu2
    dContactSlip1
    dContactSlip2
    dContactSoftCFM
    dContactSoftERP

    #collision.h
    dSphereClass
    dBoxClass
    dCapsuleClass
    dCylinderClass
    dPlaneClass
    dRayClass
    dConvexClass
    dGeomTransformClass
    dTriMeshClass
    dHeightfieldClass
    dFirstSpaceClass
    dSimpleSpaceClass
    dHashSpaceClass
    dQuadTreeSpaceClass
    dLastSpaceClass
    dFirstUserClass
    dLastUserClass
    dMaxUserClasses
    
  ctypedef float dReal
  ctypedef dReal dVector3[4]
  ctypedef dReal dVector4[4]
  ctypedef dReal dMatrix3[4*3]
  ctypedef dReal dMatrix4[4*4]
  ctypedef dReal dMatrix6[8*6]
  ctypedef dReal dQuaternion[4]

  cdef : 
    struct dxWorld
    struct dxSpace
    struct dxBody
    struct dxGeom
    struct dxJoint
    struct dxJointGroup
    struct dxTriMeshData
    struct dxHeightfieldData
  
  ctypedef dxWorld* dWorldID
  ctypedef dxSpace* dSpaceID
  ctypedef dxBody*  dBodyID
  ctypedef dxGeom*  dGeomID
  ctypedef dxJoint* dJointID
  ctypedef dxJointGroup*  dJointGroupID
  ctypedef dxTriMeshData* dTryMeshDataID
  ctypedef dxHeightfieldData* dHeightfieldDataID

  cdef struct dMass :
    dReal 	  mass
    dVector4	c
    dMatrix3	I

  cdef struct dJointFeedback :
    dVector3  f1
    dVector3  t1
    dVector3  f2
    dVector3  t2

  cdef struct dContactGeom :
    dVector3  pos
    dVector3  normal
    dReal     depth
    dGeomID   g1, g2
    int       side1,side2

  cdef struct dSurfaceParameters :
    int       mode
    dReal     mu, mu2
    dReal     bounce
    dReal     bounce_vel
    dReal     soft_erp
    dReal     soft_cfm
    dReal     motion1, motion2
    dReal     slip1, slip2

  cdef struct dContact :
    dSurfaceParameters  surface
    dContactGeom        geom
    dVector3            fdir1
   
  cdef struct dJointFeedback :
    dVector3 f1
    dVector3 t1
    dVector3 f2
    dVector3 t2
  
  cdef struct dStopwatch :
    double time
    unsigned long cc[2]
    
  ctypedef void  dGetAABBFn       ( dGeomID, dReal )
  ctypedef int   dColliderFn      ( dGeomId, dGeomId, int, dContactGeom*, int )
  ctypedef dColliderFn* dGetColliderFnFn ( int )
  ctypedef void  dGeomDtorFn      ( dGeomID )
  ctypedef int   dAABBTestFn      ( dGeomID, dGeomID, dReal )
  ctypedef void  dMessageFunction ( int, char*, va_list )
  ctypedef int   dTriCallback     ( dGeomID, dGeomID, int )
  ctypedef void  dTriArrayCallback( dGeomID, dGeomID, int*, int )
  ctypedef int   dTriRayCallback  ( dGeomID, dGeomID, int, dReal, dReal )
  ctypedef dReal dHeightfieldGetHeight( void*, int, int )
  ctypedef void  dGetAABBFn       ( dGeomID, dReal )
  ctypedef int   dColliderFn      ( dGeomID, dGeomID, int, dContactGeom*, int )
  ctypedef dColliderFn* dGetColliderFnFn ( int )
  ctypedef void  dGeomDtorFn      ( dGeomID )
  ctypedef int   dAABBTestFn      ( dGeomID, dGeomID, dReal )
  ctypedef void  dNearCallback    ( void*, dGeomID, dGeomID )
  ctypedef void* dAllocFunction   ( size_t )
  ctypedef void* dReallocFunction ( void*, size_t, size_t )
  ctypedef void  dFreeFunction    ( void*, size_t )
  
  cdef struct dGeomClass: 
    int               bytes
    dGetColliderFnFn  *collider
    dGetAABBFn        *aabb
    dAABBTestFn       *aabb_test
    dGeomDtorFn       *dtor

  cdef :
    void    dGeomTriMeshDataSet           ( dTriMeshDataID, int, void* )
    dTriMeshDataID  dGeomTriMeshDataCreate( )
    void    dGeomTriMeshDataDestroy       ( dTriMeshDataID )
    void*   dGeomTriMeshDataGet           ( dTriMeshDataID, int )
    void    dGeomTriMeshSetLastTransform  ( dGeomID, dMatrix4 )
    dReal*  dGeomTriMeshGetLastTransform  ( dGeomID )
    void    dGeomTriMeshDataBuildSingle   ( dTriMeshDataID, void*, int, int, void*, int, int )
    void    dGeomTriMeshDataBuildSingle1  ( dTriMeshDataID, void*, int, int, void*, int, int, void* )
    void    dGeomTriMeshDataBuildDouble   ( dTriMeshDataID, void*,  int, int, void*, int, int )
    void    dGeomTriMeshDataBuildDouble1  ( dTriMeshDataID, void*,  int, int, void*, int, int, void* )
    void    dGeomTriMeshDataBuildSimple   ( dTriMeshDataID, dReal*, int, int*, int )
    void    dGeomTriMeshDataBuildSimple1  ( dTriMeshDataID, dReal*, int, int*, int, int* )
    void    dGeomTriMeshDataPreprocess    ( dTriMeshDataID )
    void    dGeomTriMeshDataGetBuffer     ( dTriMeshDataID, unsigned char**, int* )
    void    dGeomTriMeshDataSetBuffer     ( dTriMeshDataID, unsigned char* )
    void    dGeomTriMeshSetCallback       ( dGeomID, dTriCallback* )
    dTriCallback* dGeomTriMeshGetCallback ( dGeomID )
    void    dGeomTriMeshSetArrayCallback  ( dGeomID, dTriArrayCallback* )
    dTriArrayCallback* dGeomTriMeshGetArrayCallback( dGeomID )
    void    dGeomTriMeshSetRayCallback    ( dGeomID, dTriRayCallback* )
    dTriRayCallback* dGeomTriMeshGetRayCallback( dGeomID )
    dGeomID dCreateTriMesh                ( dSpaceID, dTriMeshDataID, dTriCallback*, dTriArrayCallback*, dTriRayCallback* )
    void    dGeomTriMeshSetData           ( dGeomID, dTriMeshDataID )
    dTriMeshDataID dGeomTriMeshGetData    ( dGeomID )
    void    dGeomTriMeshEnableTC          ( dGeomID, int, int )
    int     dGeomTriMeshIsTCEnabled       ( dGeomID, int )
    void    dGeomTriMeshClearTCCache      ( dGeomID )
    dTriMeshDataID dGeomTriMeshGetTriMeshDataID( dGeomID )
    void    dGeomTriMeshGetTriangle       ( dGeomID, int, dVector3*, dVector3*, dVector3* )
    void    dGeomTriMeshGetPoint          ( dGeomID, int, dReal, dReal, dVector3 )
    int     dGeomTriMeshGetTriangleCount  ( dGeomID )
    void    dGeomTriMeshDataUpdate        ( dTriMeshDataID )
    int     dSafeNormalize3               ( dVector3 )
    int     dSafeNormalize4               ( dVector4 )
    void    dNormalize3                   ( dVector3 )
    void    dNormalize4                   ( dVector4 )
    void    dPlaneSpace                   ( dVector3, dVector3, dVector3 )
    int     dMassCheck                    ( dMass* )
    void    dMassSetZero                  ( dMass* )
    void    dMassSetParameters            ( dMass*, dReal, dReal, dReal, dReal, dReal, dReal, dReal, dReal, dReal, dReal )
		void    dMassSetSphere                ( dMass*, dReal, dReal )
		void    dMassSetSphereTotal           ( dMass*, dReal, dReal )
		void    dMassSetCapsule               ( dMass*, dReal, int, dReal, dReal )
		void    dMassSetCapsuleTotal          ( dMass*, dReal, int, dReal, dReal )
		void    dMassSetCylinder              ( dMass*, dReal, int, dReal, dReal )
		void    dMassSetCylinderTotal         ( dMass*, dReal, int, dReal, dReal )
		void    dMassSetBox                   ( dMass*, dReal, dReal, dReal, dReal )
		void    dMassSetBoxTotal              ( dMass*, dReal, dReal, dReal, dReal )
		void    dMassSetTrimesh               ( dMass*, dReal, dGeomID )
		void    dMassSetTrimeshTotal          ( dMass*, dReal, dGeomID )
		void    dMassAdjust                   ( dMass*, dReal )
		void    dMassTranslate                ( dMass*, dReal, dReal, dReal )
		void    dMassRotate                   ( dMass*, dMatrix3 )
		void    dMassAdd                      ( dMass*, dMass* )
		void    dSetErrorHandler              ( dMessageFunction* )
		void    dSetDebugHandler              ( dMessageFunction* )
		void    dSetMessageHandler            ( dMessageFunction* )
		dMessageFunction* dGetErrorHandler    ( )
		dMessageFunction* dGetDebugHandler    ( )
		dMessageFunction* dGetMessageHandler  ( )
		void    dError                        ( int, char*, ... )
		void    dDebug                        ( int, char*, ... )
		void    dMessage                      ( int, char*, ... )
		void    dStopwatchReset               ( dStopwatch* )
		void    dStopwatchStart               ( dStopwatch* )
		void    dStopwatchStop                ( dStopwatch* )
		double  dStopwatchTime                ( dStopwatch* )
		void    dTimerStart                   ( char* )
		void    dTimerNow                     ( char* )
		void    dTimerEnd                     ( )
		void    dTimerReport                  ( FILE*, int )
		double  dTimerTicksPerSecond          ( )
		double  dTimerResolution              ( )
		void    dGeomDestroy                  ( dGeomID )
		void    dGeomSetData                  ( dGeomID, void* )
		void    *dGeomGetData                 ( dGeomID )
		void    dGeomSetBody                  ( dGeomID, dBodyID )
		dBodyID dGeomGetBody                  ( dGeomID )
		void    dGeomSetPosition              ( dGeomID, dReal, dReal, dReal )
		void    dGeomSetRotation              ( dGeomID, dMatrix3 )
		void    dGeomSetQuaternion            ( dGeomID, dQuaternion )
		dReal*  dGeomGetPosition              ( dGeomID )
		void    dGeomCopyPosition             ( dGeomID, dVector3 )
		dReal*  dGeomGetRotation              ( dGeomID )
		void    dGeomCopyRotation             ( dGeomID, dMatrix3 )
		void    dGeomGetQuaternion            ( dGeomID, dQuaternion )
		void    dGeomGetAABB                  ( dGeomID, dReal )
		int     dGeomIsSpace                  ( dGeomID )
		dSpaceID dGeomGetSpace                ( dGeomID )
		int     dGeomGetClass                 ( dGeomID )
		void    dGeomSetCategoryBits          ( dGeomID, unsigned long )
		void    dGeomSetCollideBits           ( dGeomID, unsigned long )
		unsigned long dGeomGetCategoryBits    ( dGeomID )
		unsigned long dGeomGetCollideBits     ( dGeomID )
		void    dGeomEnable                   ( dGeomID )
		void    dGeomDisable                  ( dGeomID )
		int     dGeomIsEnabled                ( dGeomID )
		void    dGeomSetOffsetPosition        ( dGeomID, dReal, dReal, dReal )
		void    dGeomSetOffsetRotation        ( dGeomID, dMatrix3 )
		void    dGeomSetOffsetQuaternion      ( dGeomID, dQuaternion )
		void    dGeomSetOffsetWorldPosition   ( dGeomID, dReal, dReal, dReal )
		void    dGeomSetOffsetWorldRotation   ( dGeomID, dMatrix3 )
		void    dGeomSetOffsetWorldQuaternion ( dGeomID, dQuaternion )
		void    dGeomClearOffset              ( dGeomID )
		int     dGeomIsOffset                 ( dGeomID )
		dReal*  dGeomGetOffsetPosition        ( dGeomID )
		void    dGeomCopyOffsetPosition       ( dGeomID, dVector3 )
		dReal*  dGeomGetOffsetRotation        ( dGeomID )
		void    dGeomCopyOffsetRotation       ( dGeomID, dMatrix3 )
		void    dGeomGetOffsetQuaternion      ( dGeomID, dQuaternion )
		int     dCollide                      ( dGeomID, dGeomID, int, dContactGeom*, int )
		void    dSpaceCollide                 ( dSpaceID, void*, dNearCallback* )
		void    dSpaceCollide2                ( dGeomID, dGeomID, void*, dNearCallback* )
		dGeomID dCreateSphere                 ( dSpaceID, dReal )
		void    dGeomSphereSetRadius          ( dGeomID, dReal )
		dReal   dGeomSphereGetRadius          ( dGeomID )
		dReal   dGeomSpherePointDepth         ( dGeomID, dReal, dReal, dReal )
		dGeomID dCreateConvex                 ( dSpaceID, dReal*, unsigned int, dReal*, unsigned int, unsigned int )
	  void    dGeomSetConvex                ( dGeomID, dReal*, unsigned int, dReal*, unsigned int,unsigned int* )
	  dGeomID dCreateBox                    ( dSpaceID, dReal, dReal, dReal )
	  void    dGeomBoxSetLengths            ( dGeomID, dReal, dReal, dReal )
	  void    dGeomBoxGetLengths            ( dGeomID , dVector3 )
	  dReal   dGeomBoxPointDepth            ( dGeomID, dReal, dReal, dReal )
	  dGeomID dCreatePlane                  ( dSpaceID, dReal, dReal, dReal, dReal )
	  void    dGeomPlaneSetParams           ( dGeomID, dReal, dReal, dReal, dReal )
	  void    dGeomPlaneGetParams           ( dGeomID, dVector4 )
	  dReal   dGeomPlanePointDepth          ( dGeomID, dReal, dReal, dReal )
	  dGeomID dCreateCapsule                ( dSpaceID, dReal, dReal )
	  void    dGeomCapsuleSetParams         ( dGeomID, dReal, dReal )
	  void    dGeomCapsuleGetParams         ( dGeomID, dReal*, dReal* )
	  dReal   dGeomCapsulePointDepth        ( dGeomID, dReal, dReal, dReal )
	  dGeomID dCreateCylinder               ( dSpaceID, dReal, dReal )
	  void    dGeomCylinderSetParams        ( dGeomID, dReal, dReal )
	  void    dGeomCylinderGetParams        ( dGeomID, dReal*, dReal* )
	  dGeomID dCreateRay                    ( dSpaceID, dReal )
	  void    dGeomRaySetLength             ( dGeomID, dReal )
	  dReal   dGeomRayGetLength             ( dGeomID )
	  void    dGeomRaySet                   ( dGeomID, dReal, dReal, dReal, dReal, dReal, dReal )
	  void    dGeomRayGet                   ( dGeomID, dVector3, dVector3 )
	  void    dGeomRaySetParams             ( dGeomID, int, int )
	  void    dGeomRayGetParams             ( dGeomID, int*, int* )
	  void    dGeomRaySetClosestHit         ( dGeomID, int )
	  int     dGeomRayGetClosestHit         ( dGeomID )
	  dGeomID dCreateGeomTransform          ( dSpaceID )
	  void    dGeomTransformSetGeom         ( dGeomID, dGeomID )
	  dGeomID dGeomTransformGetGeom         ( dGeomID )
	  void    dGeomTransformSetCleanup      ( dGeomID , int )
	  int     dGeomTransformGetCleanup      ( dGeomID )
	  void    dGeomTransformSetInfo         ( dGeomID , int )
	  int     dGeomTransformGetInfo         ( dGeomID )
	  dGeomID dCreateHeightfield            ( dSpaceID, dHeightfieldDataID, int )
	  dHeightfieldDataID dGeomHeightfieldDataCreate( )
	  void    dGeomHeightfieldDataDestroy   ( dHeightfieldDataID )
	  void    dGeomHeightfieldDataBuildCallback( dHeightfieldDataID ,
				                                       void*, dHeightfieldGetHeight*, dReal,
				                                       dReal, int, int, dReal, dReal, dReal,
				                                       int )
    void    dGeomHeightfieldDataBuildByte ( dHeightfieldDataID, unsigned char*, int,
                                        dReal, dReal, int, int, dReal, dReal, dReal,
                                        int )
    void    dGeomHeightfieldDataBuildShort( dHeightfieldDataID, short*, int, dReal,
                                         dReal, int, int, dReal, dReal, dReal, int )
    void    dGeomHeightfieldDataBuildSingle( dHeightfieldDataID, float*, int, dReal,
                                          dReal, int, int, dReal, dReal, dReal, int )
    void    dGeomHeightfieldDataBuildDouble( dHeightfieldDataID, double*, int, dReal,
                                          dReal, int, int, dReal, dReal, dReal, int )
    void    dGeomHeightfieldDataSetBounds ( dHeightfieldDataID, dReal, dReal )
    void    dGeomHeightfieldSetHeightfieldData( dGeomID, dHeightfieldDataID )
    dHeightfieldDataID dGeomHeightfieldGetHeightfieldData( dGeomID )
    void    dClosestLineSegmentPoints     ( dVector3, dVector3, dVector3, dVector3,
                                            dVector3, dVector3 )
    int     dBoxTouchesBox                ( dVector3, dMatrix3, dVector3, dVector3, dMatrix3, dVector3 )
    int     dBoxBox                       ( dVector3, dMatrix3, dVector3, dVector3, dMatrix3, dVector3, dVector3, dReal*, int*, int, dContactGeom*, int )
	  void    dInfiniteAABB                 ( dGeomID, dReal )
	  void    dInitODE                      ( )
	  void    dCloseODE                     ( )
	  int     dCreateGeomClass              ( dGeomClass* )
	  void*   dGeomGetClassData             ( dGeomID )
	  dGeomID dCreateGeom                   ( int )
	  dSpaceID dSimpleSpaceCreate           ( dSpaceID )
	  dSpaceID dHashSpaceCreate             ( dSpaceID )
	  dSpaceID dQuadTreeSpaceCreate         ( dSpaceID, dVector3, dVector3, int )
	  void    dSpaceDestroy                 ( dSpaceID )
	  void    dHashSpaceSetLevels           ( dSpaceID, int, int )
	  void    dHashSpaceGetLevels           ( dSpaceID, int*, int* )
	  void    dSpaceSetCleanup              ( dSpaceID, int )
	  int     dSpaceGetCleanup              ( dSpaceID )
	  void    dSpaceAdd                     ( dSpaceID, dGeomID )
	  void    dSpaceRemove                  ( dSpaceID, dGeomID )
	  int     dSpaceQuery                   ( dSpaceID, dGeomID )
	  void    dSpaceClean                   ( dSpaceID )
	  int     dSpaceGetNumGeoms             ( dSpaceID )
	  dGeomID dSpaceGetGeom                 ( dSpaceID, int )
	  void    dRSetIdentity                 ( dMatrix3 )
	  void    dRFromAxisAndAngle            ( dMatrix3, dReal, dReal, dReal, dReal )
	  void    dRFromEulerAngles             ( dMatrix3, dReal, dReal, dReal )
	  void    dRFrom2Axes                   ( dMatrix3, dReal, dReal, dReal, dReal, dReal, dReal )
	  void    dRFromZAxis                   ( dMatrix3, dReal, dReal, dReal )
	  void    dQSetIdentity                 ( dQuaternion )
	  void    dQFromAxisAndAngle            ( dQuaternion, dReal, dReal, dReal, dReal )
	  void    dQMultiply0                   ( dQuaternion, dQuaternion, dQuaternion )
	  void    dQMultiply1                   ( dQuaternion, dQuaternion, dQuaternion )
	  void    dQMultiply2                   ( dQuaternion, dQuaternion, dQuaternion )
	  void    dQMultiply3                   ( dQuaternion, dQuaternion, dQuaternion )
	  void    dRfromQ                       ( dMatrix3, dQuaternion )
	  void    dQfromR                       ( dQuaternion, dMatrix3 )
	  void    dDQfromW                      ( dReal, dVector3, dQuaternion )
	  dWorldID dWorldCreate                 ( )
	  void    dWorldDestroy                 ( dWorldID )
	  void    dWorldSetGravity              ( dWorldID, dReal, dReal, dReal )
	  void    dWorldGetGravity              ( dWorldID, dVector3 )
	  void    dWorldSetERP                  ( dWorldID, dReal )
	  dReal   dWorldGetERP                  ( dWorldID )
	  void    dWorldSetCFM                  ( dWorldID, dReal )
	  dReal   dWorldGetCFM                  ( dWorldID )
	  void    dWorldStep                    ( dWorldID, dReal )
	  void    dWorldImpulseToForce          ( dWorldID, dReal, dReal, dReal, dReal, dVector3 )
	  void    dWorldQuickStep               ( dWorldID, dReal )
	  void    dWorldSetQuickStepNumIterations ( dWorldID, int )
	  int     dWorldGetQuickStepNumIterations ( dWorldID )
	  void    dWorldSetQuickStepW           ( dWorldID, dReal )
	  dReal   dWorldGetQuickStepW           ( dWorldID )
	  void    dWorldSetContactMaxCorrectingVel ( dWorldID, dReal )
	  dReal   dWorldGetContactMaxCorrectingVel ( dWorldID )
	  void    dWorldSetContactSurfaceLayer  (dWorldID, dReal )
	  dReal   dWorldGetContactSurfaceLayer  ( dWorldID )
	  void    dWorldStepFast1               ( dWorldID, dReal, int )
	  void    dWorldSetAutoEnableDepthSF1   ( dWorldID, int )
	  int     dWorldGetAutoEnableDepthSF1   ( dWorldID )
	  dReal   dWorldGetAutoDisableLinearThreshold ( dWorldID )
	  void    dWorldSetAutoDisableLinearThreshold ( dWorldID, dReal )
	  dReal   dWorldGetAutoDisableAngularThreshold ( dWorldID )
	  void    dWorldSetAutoDisableAngularThreshold ( dWorldID, dReal )
	  dReal   dWorldGetAutoDisableLinearAverageThreshold ( dWorldID )
	  void    dWorldSetAutoDisableLinearAverageThreshold ( dWorldID, dReal )
	  dReal   dWorldGetAutoDisableAngularAverageThreshold ( dWorldID )
	  void    dWorldSetAutoDisableAngularAverageThreshold ( dWorldID, dReal )
	  int     dWorldGetAutoDisableAverageSamplesCount ( dWorldID )
	  void    dWorldSetAutoDisableAverageSamplesCount ( dWorldID, unsigned int )
	  int     dWorldGetAutoDisableSteps     ( dWorldID )
	  void    dWorldSetAutoDisableSteps     ( dWorldID, int )
	  dReal   dWorldGetAutoDisableTime      ( dWorldID )
	  void    dWorldSetAutoDisableTime      ( dWorldID, dReal )
	  int     dWorldGetAutoDisableFlag      ( dWorldID )
	  void    dWorldSetAutoDisableFlag      ( dWorldID, int )
	  dReal   dBodyGetAutoDisableLinearThreshold ( dBodyID )
	  void    dBodySetAutoDisableLinearThreshold ( dBodyID, dReal )
	  dReal   dBodyGetAutoDisableAngularThreshold ( dBodyID )
	  void    dBodySetAutoDisableAngularThreshold ( dBodyID, dReal )
	  int     dBodyGetAutoDisableAverageSamplesCount ( dBodyID )
	  void    dBodySetAutoDisableAverageSamplesCount ( dBodyID, unsigned int )
	  int     dBodyGetAutoDisableSteps      ( dBodyID )
	  void    dBodySetAutoDisableSteps      ( dBodyID, int )
	  dReal   dBodyGetAutoDisableTime       ( dBodyID )
	  void    dBodySetAutoDisableTime       ( dBodyID, dReal )
	  int     dBodyGetAutoDisableFlag       ( dBodyID )
	  void    dBodySetAutoDisableFlag       ( dBodyID, int )
	  void    dBodySetAutoDisableDefaults   ( dBodyID )
	  dWorldID dBodyGetWorld                ( dBodyID )
	  dBodyID dBodyCreate                   ( dWorldID )
	  void    dBodyDestroy                  ( dBodyID )
	  void    dBodySetData                  ( dBodyID, void* )
	  void*   dBodyGetData                  ( dBodyID )
	  void    dBodySetPosition   ( dBodyID, dReal, dReal, dReal )
	  void    dBodySetRotation   ( dBodyID, dMatrix3 )
	  void    dBodySetQuaternion ( dBodyID, dQuaternion )
	  void    dBodySetLinearVel  ( dBodyID, dReal, dReal, dReal )
	  void    dBodySetAngularVel ( dBodyID, dReal, dReal, dReal )
	  dReal*  dBodyGetPosition  ( dBodyID )
	  void    dBodyCopyPosition ( dBodyID, dVector3 )
	  dReal*  dBodyGetRotation   ( dBodyID )
	  void    dBodyCopyRotation ( dBodyID, dMatrix3 )
	  dReal*  dBodyGetQuaternion ( dBodyID )
	  void    dBodyCopyQuaternion( dBodyID, dQuaternion )
	  dReal*  dBodyGetLinearVel  ( dBodyID )
	  dReal*  dBodyGetAngularVel ( dBodyID )
	  void    dBodySetMass ( dBodyID, dMass* )
	  void    dBodyGetMass ( dBodyID, dMass* )
	  void    dBodyAddForce   ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddTorque  ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddRelForce ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddRelTorque ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddForceAtPos ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddForceAtRelPos ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddRelForceAtPos ( dBodyID, dReal, dReal, dReal )
	  void    dBodyAddRelForceAtRelPos ( dBodyID, dReal, dReal, dReal )
	  dReal*  dBodyGetForce   ( dBodyID )
	  void    dBodySetForce  ( dBodyID, dReal, dReal, dReal )
	  void    dBodySetTorque ( dBodyID, dReal, dReal, dReal )
	  void    dBodyGetRelPointPos( dBodyID, dReal, dReal, dReal, dVector3 )
	  void    dBodyGetRelPointVel( dBodyID, dReal, dReal, dReal, dVector3 )
	  void    dBodyGetPointVel( dBodyID, dReal, dReal, dReal, dVector3 )
	  void    dBodyGetPosRelPoint( dBodyID, dReal, dReal, dReal, dVector3 )
	  void    dBodyVectorToWorld( dBodyID, dReal, dReal, dReal, dVector3 )
	  void    dBodyVectorFromWorld( dBodyID, dReal, dReal, dReal, dVector3 )
	  void    dBodySetFiniteRotationMode ( dBodyID, int )
	  void    dBodySetFiniteRotationAxis ( dBodyID, dReal, dReal, dReal )
	  int     dBodyGetFiniteRotationMode ( dBodyID )
	  void    dBodyGetFiniteRotationAxis ( dBodyID, dVector3 )
	  int     dBodyGetNumJoints ( dBodyID )
	  dJointID dBodyGetJoint ( dBodyID, int )
	  void    dBodyEnable ( dBodyID )
	  void    dBodyDisable ( dBodyID )
	  int     dBodyIsEnabled ( dBodyID )
	  void    dBodySetGravityMode ( dBodyID, int )
	  int     dBodyGetGravityMode ( dBodyID )
	  dJointID dJointCreateBall ( dWorldID, dJointGroupID )
	  dJointID dJointCreateHinge ( dWorldID, dJointGroupID )
	  dJointID dJointCreateSlider ( dWorldID, dJointGroupID )
	  dJointID dJointCreateContact ( dWorldID, dJointGroupID, dContact* )
	  dJointID dJointCreateHinge2 ( dWorldID, dJointGroupID )
	  dJointID dJointCreateUniversal ( dWorldID, dJointGroupID )
	  dJointID dJointCreatePR ( dWorldID, dJointGroupID )
	  dJointID dJointCreateFixed ( dWorldID, dJointGroupID )
	  dJointID dJointCreateNull ( dWorldID, dJointGroupID )
	  dJointID dJointCreateAMotor ( dWorldID, dJointGroupID )
	  dJointID dJointCreateLMotor ( dWorldID, dJointGroupID )
	  dJointID dJointCreatePlane2D ( dWorldID, dJointGroupID )
	  void    dJointDestroy ( dJointID )
	  dJointGroupID dJointGroupCreate ( int )
	  void    dJointGroupDestroy ( dJointGroupID )
	  void    dJointGroupEmpty ( dJointGroupID )
	  void    dJointAttach ( dJointID, dBodyID, dBodyID )
	  void    dJointSetData ( dJointID, void* )
	  void*   dJointGetData ( dJointID )
	  int     dJointGetType ( dJointID )
	  dBodyID dJointGetBody ( dJointID, int )
	  void    dJointSetFeedback ( dJointID, dJointFeedback* )
	  dJointFeedback* dJointGetFeedback ( dJointID )
	  void    dJointSetBallAnchor ( dJointID, dReal, dReal, dReal )
	  void    dJointSetBallAnchor2 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetBallParam ( dJointID, int, dReal )
	  void    dJointSetHingeAnchor ( dJointID, dReal, dReal, dReal )
	  void    dJointSetHingeAnchorDelta ( dJointID, dReal, dReal, dReal, dReal, dReal, dReal )
	  void    dJointSetHingeAxis ( dJointID, dReal, dReal, dReal )
	  void    dJointSetHingeParam ( dJointID, int, dReal )
	  void    dJointAddHingeTorque( dJointID, dReal )
	  void    dJointSetSliderAxis ( dJointID, dReal, dReal, dReal )
	  void    dJointSetSliderAxisDelta ( dJointID, dReal, dReal, dReal, dReal, dReal, dReal )
	  void    dJointSetSliderParam ( dJointID, int, dReal )
	  void    dJointAddSliderForce( dJointID, dReal )
	  void    dJointSetHinge2Anchor ( dJointID, dReal, dReal, dReal )
	  void    dJointSetHinge2Axis1 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetHinge2Axis2 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetHinge2Param ( dJointID, int, dReal )
	  void    dJointAddHinge2Torques( dJointID, dReal, dReal )
	  void    dJointSetUniversalAnchor ( dJointID, dReal, dReal, dReal )
	  void    dJointSetUniversalAxis1 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetUniversalAxis2 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetUniversalParam ( dJointID, int, dReal )
	  void    dJointAddUniversalTorques( dJointID, dReal, dReal )
	  void    dJointSetPRAnchor ( dJointID, dReal, dReal, dReal )
	  void    dJointSetPRAxis1 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetPRAxis2 ( dJointID, dReal, dReal, dReal )
	  void    dJointSetPRParam ( dJointID, int, dReal )
	  void    dJointAddPRTorque ( dJointID, dReal )
	  void    dJointSetFixed ( dJointID )
	  void    dJointSetFixedParam ( dJointID, int, dReal )
	  void    dJointSetAMotorNumAxes ( dJointID, int )
	  void    dJointSetAMotorAxis ( dJointID, int, int, dReal, dReal, dReal )
	  void    dJointSetAMotorAngle ( dJointID, int, dReal )
	  void    dJointSetAMotorParam ( dJointID, int, dReal )
	  void    dJointSetAMotorMode ( dJointID, int )
	  void    dJointAddAMotorTorques ( dJointID, dReal, dReal, dReal )
	  void    dJointSetLMotorNumAxes ( dJointID, int )
	  void    dJointSetLMotorAxis ( dJointID, int, int, dReal, dReal, dReal )
	  void    dJointSetLMotorParam ( dJointID, int, dReal )
	  void    dJointSetPlane2DXParam ( dJointID, int, dReal )
	  void    dJointSetPlane2DYParam ( dJointID, int, dReal )
	  void    dJointSetPlane2DAngleParam ( dJointID, int, dReal )
	  void    dJointGetBallAnchor ( dJointID, dVector3 )
	  void    dJointGetBallAnchor2 ( dJointID, dVector3 )
	  dReal   dJointGetBallParam ( dJointID, int )
	  void    dJointGetHingeAnchor ( dJointID, dVector3 )
	  void    dJointGetHingeAnchor2 ( dJointID, dVector3 )
	  void    dJointGetHingeAxis ( dJointID, dVector3 )
	  dReal   dJointGetHingeParam ( dJointID, int )
	  dReal   dJointGetHingeAngle ( dJointID )
	  dReal   dJointGetHingeAngleRate ( dJointID )
	  dReal   dJointGetSliderPosition ( dJointID )
	  dReal   dJointGetSliderPositionRate ( dJointID )
	  void    dJointGetSliderAxis ( dJointID, dVector3 )
	  dReal   dJointGetSliderParam ( dJointID, int)
	  void    dJointGetHinge2Anchor ( dJointID, dVector3 )
	  void    dJointGetHinge2Anchor2 ( dJointID, dVector3 )
	  void    dJointGetHinge2Axis1 ( dJointID, dVector3 )
	  void    dJointGetHinge2Axis2 ( dJointID, dVector3 )
	  dReal   dJointGetHinge2Param ( dJointID, int )
	  dReal   dJointGetHinge2Angle1 ( dJointID )
	  dReal   dJointGetHinge2Angle1Rate ( dJointID )
	  dReal   dJointGetHinge2Angle2Rate ( dJointID )
	  void    dJointGetUniversalAnchor ( dJointID, dVector3 )
	  void    dJointGetUniversalAnchor2 ( dJointID, dVector3 )
	  void    dJointGetUniversalAxis1 ( dJointID, dVector3 )
	  void    dJointGetUniversalAxis2 ( dJointID, dVector3 )
	  dReal   dJointGetUniversalParam ( dJointID, int )
	  void    dJointGetUniversalAngles ( dJointID, dReal*, dReal* )
	  dReal   dJointGetUniversalAngle1 ( dJointID )
	  dReal   dJointGetUniversalAngle2 ( dJointID )
	  dReal   dJointGetUniversalAngle1Rate ( dJointID )
	  dReal   dJointGetUniversalAngle2Rate ( dJointID )
	  void    dJointGetPRAnchor ( dJointID, dVector3 )
	  dReal   dJointGetPRPosition ( dJointID )
	  dReal   dJointGetPRPositionRate ( dJointID )
	  void    dJointGetPRAxis1 ( dJointID, dVector3 )
	  void    dJointGetPRAxis2 ( dJointID, dVector3 )
	  dReal   dJointGetPRParam ( dJointID, int )
	  int     dJointGetAMotorNumAxes ( dJointID )
	  void    dJointGetAMotorAxis ( dJointID, int, dVector3 )
	  int     dJointGetAMotorAxisRel ( dJointID, int )
	  dReal   dJointGetAMotorAngle ( dJointID, int )
	  dReal   dJointGetAMotorAngleRate ( dJointID, int )
	  dReal   dJointGetAMotorParam ( dJointID, int )
	  int     dJointGetAMotorMode ( dJointID )
	  int     dJointGetLMotorNumAxes ( dJointID )
	  void    dJointGetLMotorAxis ( dJointID, int, dVector3 )
	  dReal   dJointGetLMotorParam ( dJointID, int )
	  dReal   dJointGetFixedParam ( dJointID, int )
	  dJointID dConnectingJoint ( dBodyID, dBodyID )
	  int     dConnectingJointList ( dBodyID, dBodyID, dJointID* )
	  int     dAreConnected ( dBodyID, dBodyID )
	  int     dAreConnectedExcluding ( dBodyID, dBodyID, int )
	  void    dSetAllocHandler ( dAllocFunction* )
	  void    dSetReallocHandler ( dReallocFunction* )
	  void    dSetFreeHandler ( dFreeFunction* )
	  dAllocFunction* dGetAllocHandler ( )
	  dReallocFunction* dGetReallocHandler ( )
	  dFreeFunction* dGetFreeHandler ( )
	  void*   dAlloc ( size_t )
	  void*   dRealloc ( void*, size_t, size_t )
	  void    dFree ( void*, size_t )
	  void    dWorldExportDIF ( dWorldID, FILE*, char* )
	  int     dTestRand( )
	  unsigned long dRand( )
	  unsigned long  dRandGetSeed( )
	  void    dRandSetSeed ( unsigned long )
	  int     dRandInt ( int )
	  dReal   dRandReal( )
	  void    dPrintMatrix ( dReal*, int, int, char*, FILE* )
	  void    dMakeRandomVector ( dReal*, int, dReal )
	  void    dMakeRandomMatrix ( dReal*, int, int, dReal )
	  void    dClearUpperTriangle ( dReal*, int )
	  dReal   dMaxDifference ( dReal*, dReal*, int, int )
	  dReal   dMaxDifferenceLowerTriangle ( dReal*, dReal*, int )
	  void    dSetZero ( dReal*, int )
	  void    dSetValue ( dReal*, int, dReal )
	  dReal   dDot ( dReal*, dReal*, int )
	  void    dMultiply0 ( dReal*, dReal*, dReal*, int, int, int )
	  void    dMultiply1 ( dReal*, dReal*, dReal*, int, int, int )
	  void    dMultiply2 ( dReal*, dReal*, dReal*, int, int, int )
	  int     dFactorCholesky ( dReal*, int )
	  void    dSolveCholesky ( dReal*, dReal*, int )
	  int     dInvertPDMatrix ( dReal*, dReal*, int )
	  int     dIsPositiveDefinite ( dReal*, int )
	  void    dFactorLDLT ( dReal*, dReal*, int, int )
	  void    dSolveL1 ( dReal*, dReal*, int, int )
	  void    dSolveL1T ( dReal*, dReal*, int, int )
	  void    dVectorScale ( dReal*, dReal*, int )
	  void    dSolveLDLT ( dReal*, dReal*, dReal*, int, int )
	  void    dLDLTAddTL ( dReal*, dReal*, dReal*, int, int )
	  void    dLDLTRemove ( dReal**, int*, dReal*, dReal*, int, int, int, int )
	  void    dRemoveRowCol ( dReal*, int, int, int )