Advertisement
Guest User

ctypes pyode - may12 2011

a guest
May 13th, 2011
345
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 187.30 KB | None | 0 0
  1. ## generated by RPythonic 0.3.6pre4
  2. ## http://code.google.com/p/rpythonic/
  3. import os, sys, ctypes
  4. IS32BIT = (ctypes.sizeof(ctypes.c_void_p)==4)
  5.  
  6. ## this ctypes file expects to be in the cache directory,
  7. ## with precompiled c-libraries two directories up, if the library is not there try to load from the system.
  8. _clibs_dir = os.path.join( os.path.dirname(os.path.abspath(__file__)), '../../clibs' )
  9. _clibs_dir = os.path.abspath( _clibs_dir )
  10.  
  11. def _load_ctypes_lib( name ):
  12.     if os.name == 'posix':
  13.         if sys.platform=='linux2':
  14.             name += '.so'
  15.             if IS32BIT:     path = os.path.join(_clibs_dir,'linux32')
  16.             else:       path = os.path.join(_clibs_dir,'linux64')
  17.             url = os.path.join( path, name )
  18.             if os.path.isfile( url ): return ctypes.CDLL(url)
  19.             elif os.path.isfile( '/usr/local/lib/%s'%name ): return ctypes.CDLL('/usr/local/lib/%s'%name)
  20.             elif os.path.isfile( '/usr/local/lib64/%s'%name ) and not IS32BIT: return ctypes.CDLL('/usr/local/lib64/%s'%name)
  21.             elif os.path.isfile( '/usr/lib/%s'%name ): return ctypes.CDLL('/usr/lib/%s'%name)
  22.             elif os.path.isfile( './%s'%name ): return ctypes.CDLL('./%s'%name)
  23.             else: return ctypes.CDLL(name) #fallback
  24.  
  25.         elif sys.platform == 'darwin':
  26.             name += '.dylib'
  27.             if IS32BIT:     path = os.path.join(_clibs_dir,'osx32')
  28.             else:       path = os.path.join(_clibs_dir,'osx64')
  29.             url = os.path.join( path, name )
  30.             if os.path.isfile( url ): return ctypes.CDLL(url)
  31.             else: return ctypes.CDLL(name) #fallback
  32.  
  33.     elif os.name == 'nt':
  34.         name += '.dll'
  35.         if IS32BIT:     path = os.path.join(_clibs_dir,'win32')
  36.         else:       path = os.path.join(_clibs_dir,'win64')
  37.         url = os.path.join( path, name )
  38.         if os.path.isfile( url ): return ctypes.CDLL(url)
  39.         else: return ctypes.CDLL(name) #fallback
  40.  
  41. RPYTHONIC_WRAPPER_FUNCTIONS = {}
  42. RPYTHONIC_WRAPPER_FUNCTIONS_FAILURES = []
  43.  
  44. _VOIDPP_ = ctypes.POINTER( ctypes.c_void_p )
  45. ## ctypes does not clearly expose these types ##
  46. PyCFuncPtrType = type(ctypes.CFUNCTYPE(ctypes.c_void_p))
  47. PyCArrayType = type( ctypes.c_int * 2 )
  48. PyCPointerType = type( ctypes.POINTER(ctypes.c_int) )
  49. PyCStructType = type( ctypes.Structure )
  50. CArgObject = type( ctypes.byref(ctypes.c_int()) )
  51.  
  52. class _rpythonic_function_(object):
  53.     def __init__(self, name, result=ctypes.c_void_p, args=[]):
  54.         self.name = name
  55.         self.result = result
  56.         self.argtypes = []
  57.         self.argnames = []
  58.         self.argtypestypes = []
  59.         for arg in args:
  60.             self.argnames.append( arg[0] )
  61.             self.argtypes.append( arg[1] )
  62.             self.argtypestypes.append( type(arg[1]) )       # precomputed for speed
  63.         self.argtypes = tuple( self.argtypes )
  64.         self.argnames = tuple( self.argnames )
  65.         self.argtypestypes = tuple( self.argtypestypes )
  66.         self.numargs = len( self.argtypes )
  67.         self.callbacks = [None] * self.numargs
  68.         try:
  69.             self.setup()
  70.             RPYTHONIC_WRAPPER_FUNCTIONS[ name ] = self
  71.         except:
  72.             RPYTHONIC_WRAPPER_FUNCTIONS_FAILURES.append( name )
  73.  
  74.     def setup(self):
  75.         func = self.function = getattr(_ctypes_lib_, self.name );
  76.         func.restype = self.result
  77.         func.argtypes = self.argtypes
  78.         self.defaults = []
  79.         for i in range( self.numargs ):
  80.             T = self.argtypes[ i ]
  81.             if type(T) is PyCFuncPtrType:
  82.                 p = T() # func pointers can not be None
  83.                 self.defaults.append( p )
  84.                 self.callbacks[ i ] = p                 # save reference
  85.             else: self.defaults.append( None )  # None is allowed for all other types
  86.  
  87.     def __call__( self, *args ):            # allow flexible calling types
  88.         cargs = list( self.defaults )
  89.         for i,arg in enumerate(args):
  90.             t = type(arg)
  91.             k = self.argtypes[ i ]
  92.             kt = self.argtypestypes[ i ]
  93.             if t in (list,tuple):               # convert lists and tuples into array
  94.                 if kt is PyCArrayType:
  95.                     cargs[ i ] = k(*arg)
  96.                 elif kt is PyCStructType:
  97.                     if k._array_wrapper_: cargs[ i ] = k(arg)   # allow easy array init
  98.                     else: cargs[ i ] = k(*arg)                          # allow multiple args
  99.                 elif kt is PyCPointerType:
  100.                     cargs[ i ] = _convert_nested_list_to_pointer( k, arg )
  101.                 else: assert 0
  102.             #elif k is _VOIDPP_ and isinstance( arg, ctypes._Pointer ):
  103.             #   # special case, need to cast, opaque hack
  104.             #   cargs[ i ] = ctypes.cast( arg, _VOIDPP_ )
  105.             elif isinstance( arg, ctypes._Pointer ) and t is not k:
  106.                 cargs[ i ] = ctypes.cast( arg, k )  # generic's that need to be cast
  107.  
  108.             elif kt is PyCPointerType and not isinstance( arg, (ctypes._Pointer,CArgObject) ):
  109.                 if t in (int,float,bool): ptr = k( k._type_(arg) )
  110.                 elif t is str:
  111.                     ptr = k( k._type_() )       # not k() otherwise null pointer error
  112.                     for j, char in enumerate(arg): ptr[ j ] = char.encode('ascii')
  113.                 elif t in (PyCStructType, PyCArrayType):
  114.                     ptr = ctypes.cast( ctypes.pointer( arg ), k )
  115.                 else:       # wrap py object
  116.                     ptr = ctypes.cast( ctypes.pointer(ctypes.py_object(arg)), k )
  117.                 cargs[ i ] = ptr
  118.             elif kt is PyCFuncPtrType:
  119.                 cargs[ i ] = self.callbacks[ i ] = k( arg )     # assume arg is a callable
  120.             else:
  121.                 cargs[ i ] = arg        # directly pass
  122.  
  123.         return self.function( *cargs )
  124.  
  125.  
  126. def _convert_nested_list_to_pointer( k, arg ):
  127.     depth = 0; s = k
  128.     while True:
  129.         if type(s) is PyCPointerType:
  130.             s = getattr( s, '_type_' )
  131.             depth += 1
  132.         else: break
  133.     assert depth and depth <= 2
  134.     if depth == 1:
  135.         T = k._type_
  136.         ptr = k( k._type_() )
  137.         for i in range( len(arg) ):
  138.             ptr[ i ] = T( *arg[i] )
  139.     elif depth == 2:
  140.         T = k._type_._type_
  141.         _ptr = k._type_( k._type_._type_() )
  142.         for i in range(len( arg )):
  143.             for j in range( len(arg[i]) ):
  144.                 _ptr[ j ] = T( *arg[ i ][ j ] )
  145.         ptr = k( _ptr )
  146.     return ptr
  147.  
  148. #setattr( ctypes._Pointer, '__call__', lambda s: s.contents )   # not allowed
  149. #class __smart_pointer__( ctypes._Pointer ):
  150. #   def __call__(self): return self.contents
  151. #   def __getattr__(self, name ): return getattr( self.contents, name )
  152. #setattr( ctypes, '_Pointer', __smart_pointer__ )       # this works!
  153.  
  154. def __freeze_rpythonic_struct( cls, fields ):
  155.     try: setattr( cls, '_fields_', fields )
  156.     except:
  157.         print( 'WARN - bad order struct freeze', cls )
  158.         #cls._fields_ = []
  159.  
  160. class _rpythonic_struct_( ctypes.Structure ):
  161.     _array_wrapper_ = False
  162.     _fields_ = []
  163.     def __call__(self): return self
  164.     def __init__(self, *args, **kw ):
  165.         cargs = []
  166.         argtypes = []
  167.         for a in self._fields_: argtypes.append( a[1] )
  168.         if len(args) > len(argtypes): args = [args] # allow both calling conventions
  169.         for i,arg in enumerate( args ):
  170.             t = type(arg)
  171.             k = argtypes[ i ]
  172.             if t in (list,tuple):
  173.                 if k.__class__.__name__ == 'PyCArrayType':
  174.                     cargs.append( k(*arg) )
  175.                 elif k.__class__.__name__ == 'PyCStructType':
  176.                     if k._array_wrapper_: cargs.append( k(arg) )    # allow easy array init
  177.                     else: cargs.append( k(*arg) )                           # allow multiple args
  178.             elif isinstance( arg, ctypes._Pointer ) and t is not k:
  179.                 cargs[ i ] = ctypes.cast( arg, k )  # generic's that need to be cast
  180.             elif k.__class__.__name__ == 'PyCArrayType' and t in (float,int,bool):
  181.                 cargs.append( k(arg) )      # support init array from single value
  182.             else:
  183.                 cargs.append( arg )     # directly pass
  184.  
  185.         ctypes.Structure.__init__(self, *cargs, **kw)
  186.  
  187.  
  188.  
  189. _clib_name_ = 'libode'
  190. print('loading lib', _clib_name_)
  191. print( os.path.abspath( os.path.curdir ) )
  192. _ctypes_lib_ = _load_ctypes_lib( _clib_name_ )
  193. assert _ctypes_lib_
  194. print( _ctypes_lib_._name )
  195.  
  196. ## macro globals ##
  197. ## enums ##
  198. _codecvt_result = {
  199.     "__codecvt_ok" : 0,
  200.     "__codecvt_partial" : 1,
  201.     "__codecvt_error" : 2,
  202.     "__codecvt_noconv" : 3,
  203. }
  204.  
  205. FP_NAN = 0
  206. FP_INFINITE = 1
  207. FP_ZERO = 2
  208. FP_SUBNORMAL = 3
  209. FP_NORMAL = 4
  210.  
  211. IEEE_ = -1
  212. SVID_ = -1
  213. XOPEN_ = 0
  214. POSIX_ = 1
  215. ISOC_ = 2
  216.  
  217. d_ERR_UNKNOWN = 0
  218. d_ERR_IASSERT = 0
  219. d_ERR_UASSERT = 1
  220. d_ERR_LCP = 2
  221.  
  222. dJointTypeNone = 0
  223. dJointTypeBall = 0
  224. dJointTypeHinge = 1
  225. dJointTypeSlider = 2
  226. dJointTypeContact = 3
  227. dJointTypeUniversal = 4
  228. dJointTypeHinge2 = 5
  229. dJointTypeFixed = 6
  230. dJointTypeNull = 7
  231. dJointTypeAMotor = 8
  232. dJointTypeLMotor = 9
  233. dJointTypePlane2D = 10
  234. dJointTypePR = 11
  235. dJointTypePU = 12
  236. dJointTypePiston = 13
  237.  
  238. dParamLoStop = 0
  239. dParamHiStop = 0
  240. dParamVel = 1
  241. dParamFMax = 2
  242. dParamFudgeFactor = 3
  243. dParamBounce = 4
  244. dParamCFM = 5
  245. dParamStopERP = 6
  246. dParamStopCFM = 7
  247. dParamSuspensionERP = 8
  248. dParamSuspensionCFM = 9
  249. dParamERP = 10
  250. dParamsInGroup = 11
  251. dParamGroup1 = 0
  252. dParamLoStop1 = 0
  253. dParamHiStop1 = 0
  254. dParamVel1 = 1
  255. dParamFMax1 = 2
  256. dParamFudgeFactor1 = 3
  257. dParamBounce1 = 4
  258. dParamCFM1 = 5
  259. dParamStopERP1 = 6
  260. dParamStopCFM1 = 7
  261. dParamSuspensionERP1 = 8
  262. dParamSuspensionCFM1 = 9
  263. dParamERP1 = 10
  264. dParamGroup2 = 256
  265. dParamLoStop2 = 256
  266. dParamHiStop2 = 256
  267. dParamVel2 = 257
  268. dParamFMax2 = 258
  269. dParamFudgeFactor2 = 259
  270. dParamBounce2 = 260
  271. dParamCFM2 = 261
  272. dParamStopERP2 = 262
  273. dParamStopCFM2 = 263
  274. dParamSuspensionERP2 = 264
  275. dParamSuspensionCFM2 = 265
  276. dParamERP2 = 266
  277. dParamGroup3 = 512
  278. dParamLoStop3 = 512
  279. dParamHiStop3 = 512
  280. dParamVel3 = 513
  281. dParamFMax3 = 514
  282. dParamFudgeFactor3 = 515
  283. dParamBounce3 = 516
  284. dParamCFM3 = 517
  285. dParamStopERP3 = 518
  286. dParamStopCFM3 = 519
  287. dParamSuspensionERP3 = 520
  288. dParamSuspensionCFM3 = 521
  289. dParamERP3 = 522
  290. dParamGroup = 256
  291.  
  292. dAMotorUser = 0
  293. dAMotorEuler = 1
  294.  
  295. dInitODEFlags = {
  296.     "dInitFlagManualThreadCleanup" : 1,
  297. }
  298.  
  299. dAllocateODEDataFlags = {
  300.     "dAllocateFlagBasicData" : 0,
  301.     "dAllocateFlagCollisionData" : 1,
  302.     "dAllocateMaskAll" : -1,
  303. }
  304.  
  305. dContactMu2 = 1
  306. dContactFDir1 = 2
  307. dContactBounce = 4
  308. dContactSoftERP = 8
  309. dContactSoftCFM = 16
  310. dContactMotion1 = 32
  311. dContactMotion2 = 64
  312. dContactMotionN = 128
  313. dContactSlip1 = 256
  314. dContactSlip2 = 512
  315. dContactApprox0 = 0
  316. dContactApprox1_1 = 4096
  317. dContactApprox1_2 = 8192
  318. dContactApprox1 = 12288
  319.  
  320. dMaxUserClasses = 4
  321.  
  322. dSphereClass = 0
  323. dBoxClass = 0
  324. dCapsuleClass = 1
  325. dCylinderClass = 2
  326. dPlaneClass = 3
  327. dRayClass = 4
  328. dConvexClass = 5
  329. dGeomTransformClass = 6
  330. dTriMeshClass = 7
  331. dHeightfieldClass = 8
  332. dFirstSpaceClass = 9
  333. dSimpleSpaceClass = 9
  334. dHashSpaceClass = 9
  335. dSweepAndPruneSpaceClass = 10
  336. dQuadTreeSpaceClass = 11
  337. dLastSpaceClass = 11
  338. dFirstUserClass = 11
  339. dLastUserClass = 14
  340. dGeomNumClasses = 14
  341.  
  342. TRIMESH_FACE_NORMALS = 0
  343.  
  344. class __fsid_t(_rpythonic_struct_): _array_wrapper_ = True
  345. _fsid_t = __fsid_t
  346. class __mbstate_t(_rpythonic_struct_): pass
  347. _mbstate_t = __mbstate_t
  348. class __value(ctypes.Union): pass
  349. _value = __value
  350. class _G_fpos_t(_rpythonic_struct_): pass
  351. G_fpos_t = _G_fpos_t
  352. class _G_fpos64_t(_rpythonic_struct_): pass
  353. G_fpos64_t = _G_fpos64_t
  354. class _IO_jump_t(_rpythonic_struct_): pass
  355. IO_jump_t = _IO_jump_t
  356. class _IO_marker(_rpythonic_struct_): pass
  357. IO_marker = _IO_marker
  358. class _IO_FILE(_rpythonic_struct_): _array_wrapper_ = True
  359. IO_FILE = _IO_FILE
  360. class _IO_FILE_plus(_rpythonic_struct_): pass
  361. IO_FILE_plus = _IO_FILE_plus
  362. class wait(ctypes.Union): pass
  363. class __wait_terminated(_rpythonic_struct_): pass
  364. _wait_terminated = __wait_terminated
  365. class __wait_stopped(_rpythonic_struct_): pass
  366. _wait_stopped = __wait_stopped
  367. class __WAIT_STATUS(ctypes.Union): pass
  368. _WAIT_STATUS = __WAIT_STATUS
  369. class div_t(_rpythonic_struct_): pass
  370. class ldiv_t(_rpythonic_struct_): pass
  371. class lldiv_t(_rpythonic_struct_): pass
  372. class __sigset_t(_rpythonic_struct_): _array_wrapper_ = True
  373. _sigset_t = __sigset_t
  374. class timespec(_rpythonic_struct_): pass
  375. class timeval(_rpythonic_struct_): pass
  376. class fd_set(_rpythonic_struct_): _array_wrapper_ = True
  377. class pthread_attr_t(ctypes.Union): pass
  378. class __pthread_internal_slist(_rpythonic_struct_): pass
  379. _pthread_internal_slist = __pthread_internal_slist
  380. class pthread_mutex_t(ctypes.Union): pass
  381. class __pthread_mutex_s(_rpythonic_struct_): pass
  382. _pthread_mutex_s = __pthread_mutex_s
  383. class pthread_mutexattr_t(ctypes.Union): pass
  384. class pthread_cond_t(ctypes.Union): pass
  385. class pthread_condattr_t(ctypes.Union): pass
  386. class pthread_rwlock_t(ctypes.Union): pass
  387. class __data(_rpythonic_struct_): pass
  388. _data = __data
  389. class pthread_rwlockattr_t(ctypes.Union): pass
  390. class pthread_barrier_t(ctypes.Union): pass
  391. class pthread_barrierattr_t(ctypes.Union): pass
  392. class random_data(_rpythonic_struct_): pass
  393. class drand48_data(_rpythonic_struct_): _array_wrapper_ = True
  394. class exception(_rpythonic_struct_): pass
  395. class __locale_struct(_rpythonic_struct_): _array_wrapper_ = True
  396. _locale_struct = __locale_struct
  397. class __locale_data(_rpythonic_struct_): pass
  398. _locale_data = __locale_data
  399. class dxWorld(_rpythonic_struct_): pass
  400. class dxSpace(_rpythonic_struct_): pass
  401. class dxBody(_rpythonic_struct_): pass
  402. class dxGeom(_rpythonic_struct_): pass
  403. class dxJoint(_rpythonic_struct_): pass
  404. class dxJointNode(_rpythonic_struct_): pass
  405. class dxJointGroup(_rpythonic_struct_): pass
  406. class dJointFeedback(_rpythonic_struct_): pass
  407. class dSurfaceParameters(_rpythonic_struct_): pass
  408. class dContactGeom(_rpythonic_struct_): pass
  409. class dContact(_rpythonic_struct_): pass
  410. class dStopwatch(_rpythonic_struct_): _array_wrapper_ = True
  411. class dMass(_rpythonic_struct_): pass
  412. class dxTriMeshData(_rpythonic_struct_): pass
  413. class dxHeightfieldData(_rpythonic_struct_): pass
  414. class dGeomClass(_rpythonic_struct_): pass
  415. ## callback prototypes ##
  416. PROTOTYPE_dGetColliderFnFn = ctypes.CFUNCTYPE(ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.POINTER(dContactGeom),ctypes.c_int,), ctypes.c_int,)
  417. PROTOTYPE_dGetAABBFn = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),( ctypes.c_double * 6 ),)
  418. PROTOTYPE_dAABBTestFn = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),( ctypes.c_double * 6 ),)
  419. PROTOTYPE_dGeomDtorFn = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(dxGeom),)
  420. PROTOTYPE___func = ctypes.CFUNCTYPE(ctypes.c_void_p, )
  421. PROTOTYPE___compar_fn_t = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(ctypes.c_void_p),ctypes.POINTER(ctypes.c_void_p),)
  422. PROTOTYPE_dMessageFunction = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,)
  423. PROTOTYPE_dAllocFunction = ctypes.CFUNCTYPE(ctypes.POINTER(ctypes.c_void_p), ctypes.c_uint,)
  424. PROTOTYPE_dReallocFunction = ctypes.CFUNCTYPE(ctypes.POINTER(ctypes.c_void_p), ctypes.POINTER(ctypes.c_void_p),ctypes.c_uint,ctypes.c_uint,)
  425. PROTOTYPE_dFreeFunction = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),ctypes.c_uint,)
  426. PROTOTYPE_callback = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),)
  427. PROTOTYPE_dNearCallback = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),)
  428. PROTOTYPE_dTriCallback = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,)
  429. PROTOTYPE_dTriArrayCallback = ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.POINTER(ctypes.c_int),ctypes.c_int,)
  430. PROTOTYPE_dTriRayCallback = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_double,ctypes.c_double,)
  431. PROTOTYPE_dTriTriMergeCallback = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_int,)
  432. PROTOTYPE_dHeightfieldGetHeight = ctypes.CFUNCTYPE(ctypes.c_double, ctypes.POINTER(ctypes.c_void_p),ctypes.c_int,ctypes.c_int,)
  433. PROTOTYPE_dColliderFn = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.POINTER(dContactGeom),ctypes.c_int,)
  434. ## union and structures ##
  435. __freeze_rpythonic_struct( __fsid_t, [
  436.     ( "__val", ( ctypes.c_int * 2 ) ),
  437. ])
  438.  
  439. __freeze_rpythonic_struct( __value, [
  440.     ( "__wch", ctypes.c_uint ),
  441.     ( "__wchb", ( ctypes.c_char * 4 ) ),
  442. ])
  443.  
  444. __freeze_rpythonic_struct( __mbstate_t, [
  445.     ( "__count", ctypes.c_int ),
  446.     ( "__value", __value ),
  447. ])
  448.  
  449. __freeze_rpythonic_struct( _G_fpos_t, [
  450.     ( "__pos", ctypes.c_int64 ),
  451.     ( "__state", __mbstate_t ),
  452. ])
  453.  
  454. __freeze_rpythonic_struct( _G_fpos64_t, [
  455.     ( "__pos", ctypes.c_longlong ),
  456.     ( "__state", __mbstate_t ),
  457. ])
  458.  
  459. __freeze_rpythonic_struct( _IO_jump_t, [
  460. ])
  461.  
  462. __freeze_rpythonic_struct( _IO_marker, [
  463.     ( "_next", ctypes.POINTER(_IO_marker) ),
  464.     ( "_sbuf", ctypes.POINTER(_IO_FILE) ),
  465.     ( "_pos", ctypes.c_int ),
  466. ])
  467.  
  468. __freeze_rpythonic_struct( _IO_FILE, [
  469.     ( "_flags", ctypes.c_int ),
  470.     ( "_IO_read_ptr", ctypes.POINTER(ctypes.c_char) ),
  471.     ( "_IO_read_end", ctypes.POINTER(ctypes.c_char) ),
  472.     ( "_IO_read_base", ctypes.POINTER(ctypes.c_char) ),
  473.     ( "_IO_write_base", ctypes.POINTER(ctypes.c_char) ),
  474.     ( "_IO_write_ptr", ctypes.POINTER(ctypes.c_char) ),
  475.     ( "_IO_write_end", ctypes.POINTER(ctypes.c_char) ),
  476.     ( "_IO_buf_base", ctypes.POINTER(ctypes.c_char) ),
  477.     ( "_IO_buf_end", ctypes.POINTER(ctypes.c_char) ),
  478.     ( "_IO_save_base", ctypes.POINTER(ctypes.c_char) ),
  479.     ( "_IO_backup_base", ctypes.POINTER(ctypes.c_char) ),
  480.     ( "_IO_save_end", ctypes.POINTER(ctypes.c_char) ),
  481.     ( "_markers", ctypes.POINTER(_IO_marker) ),
  482.     ( "_chain", ctypes.POINTER(_IO_FILE) ),
  483.     ( "_fileno", ctypes.c_int ),
  484.     ( "_flags2", ctypes.c_int ),
  485.     ( "_old_offset", ctypes.c_int64 ),
  486.     ( "_cur_column", ctypes.c_ushort ),
  487.     ( "_vtable_offset", ctypes.c_char ),
  488.     ( "_shortbuf", ( ctypes.c_char * 1 ) ),
  489.     ( "_lock", ctypes.POINTER(ctypes.c_void_p) ),
  490.     ( "_offset", ctypes.c_longlong ),
  491.     ( "__pad1", ctypes.POINTER(ctypes.c_void_p) ),
  492.     ( "__pad2", ctypes.POINTER(ctypes.c_void_p) ),
  493.     ( "__pad3", ctypes.POINTER(ctypes.c_void_p) ),
  494.     ( "__pad4", ctypes.POINTER(ctypes.c_void_p) ),
  495.     ( "__pad5", ctypes.c_uint ),
  496.     ( "_mode", ctypes.c_int ),
  497.     ( "_unused2", ctypes.c_char ),
  498. ])
  499.  
  500. __freeze_rpythonic_struct( _IO_FILE_plus, [
  501. ])
  502.  
  503. __freeze_rpythonic_struct( __wait_terminated, [
  504.     ( "__w_termsig", ctypes.c_uint ),
  505.     ( "__w_coredump", ctypes.c_uint ),
  506.     ( "__w_retcode", ctypes.c_uint ),
  507.     #opaque-warning# <rpythonic.rpythonic.SomeThing object at 0x91151cc>
  508. ])
  509.  
  510. __freeze_rpythonic_struct( __wait_stopped, [
  511.     ( "__w_stopval", ctypes.c_uint ),
  512.     ( "__w_stopsig", ctypes.c_uint ),
  513.     #opaque-warning# <rpythonic.rpythonic.SomeThing object at 0x911530c>
  514. ])
  515.  
  516. __freeze_rpythonic_struct( wait, [
  517.     ( "w_status", ctypes.c_int ),
  518.     ( "__wait_terminated", __wait_terminated ),
  519.     ( "__wait_stopped", __wait_stopped ),
  520. ])
  521.  
  522. __freeze_rpythonic_struct( __WAIT_STATUS, [
  523.     ( "__uptr", ctypes.POINTER(wait) ),
  524.     ( "__iptr", ctypes.POINTER(ctypes.c_int) ),
  525. ])
  526.  
  527. __freeze_rpythonic_struct( div_t, [
  528.     ( "quot", ctypes.c_int ),
  529.     ( "rem", ctypes.c_int ),
  530. ])
  531.  
  532. __freeze_rpythonic_struct( ldiv_t, [
  533.     ( "quot", ctypes.c_int64 ),
  534.     ( "rem", ctypes.c_int64 ),
  535. ])
  536.  
  537. __freeze_rpythonic_struct( lldiv_t, [
  538.     ( "quot", ctypes.c_longlong ),
  539.     ( "rem", ctypes.c_longlong ),
  540. ])
  541.  
  542. __freeze_rpythonic_struct( __sigset_t, [
  543.     ( "__val", ctypes.c_uint64 ),
  544. ])
  545.  
  546. __freeze_rpythonic_struct( timespec, [
  547.     ( "tv_sec", ctypes.c_int64 ),
  548.     ( "tv_nsec", ctypes.c_int64 ),
  549. ])
  550.  
  551. __freeze_rpythonic_struct( timeval, [
  552.     ( "tv_sec", ctypes.c_int64 ),
  553.     ( "tv_usec", ctypes.c_int64 ),
  554. ])
  555.  
  556. __freeze_rpythonic_struct( fd_set, [
  557.     ( "__fds_bits", ctypes.c_int64 ),
  558. ])
  559.  
  560. __freeze_rpythonic_struct( pthread_attr_t, [
  561.     ( "__size", ( ctypes.c_char * 36 ) ),
  562.     ( "__align", ctypes.c_int64 ),
  563. ])
  564.  
  565. __freeze_rpythonic_struct( __pthread_internal_slist, [
  566.     ( "__next", ctypes.POINTER(__pthread_internal_slist) ),
  567. ])
  568.  
  569. __freeze_rpythonic_struct( __pthread_mutex_s, [
  570.     ( "__lock", ctypes.c_int ),
  571.     ( "__count", ctypes.c_uint ),
  572.     ( "__owner", ctypes.c_int ),
  573.     ( "__kind", ctypes.c_int ),
  574.     ( "__nusers", ctypes.c_uint ),
  575.     #opaque-warning# <rpythonic.rpythonic.SomeThing object at 0x91bcc6c>
  576. ])
  577.  
  578. __freeze_rpythonic_struct( pthread_mutex_t, [
  579.     ( "__data", __pthread_mutex_s ),
  580.     ( "__size", ( ctypes.c_char * 24 ) ),
  581.     ( "__align", ctypes.c_int64 ),
  582. ])
  583.  
  584. __freeze_rpythonic_struct( pthread_mutexattr_t, [
  585.     ( "__size", ( ctypes.c_char * 4 ) ),
  586.     ( "__align", ctypes.c_int ),
  587. ])
  588.  
  589. __freeze_rpythonic_struct( __data, [
  590.     ( "__lock", ctypes.c_int ),
  591.     ( "__nr_readers", ctypes.c_uint ),
  592.     ( "__readers_wakeup", ctypes.c_uint ),
  593.     ( "__writer_wakeup", ctypes.c_uint ),
  594.     ( "__nr_readers_queued", ctypes.c_uint ),
  595.     ( "__nr_writers_queued", ctypes.c_uint ),
  596.     ( "__flags", ctypes.c_ubyte ),
  597.     ( "__shared", ctypes.c_ubyte ),
  598.     ( "__pad1", ctypes.c_ubyte ),
  599.     ( "__pad2", ctypes.c_ubyte ),
  600.     ( "__writer", ctypes.c_int ),
  601. ])
  602.  
  603. __freeze_rpythonic_struct( pthread_cond_t, [
  604.     ( "__data", __data ),
  605.     ( "__size", ( ctypes.c_char * 48 ) ),
  606.     ( "__align", ctypes.c_longlong ),
  607. ])
  608.  
  609. __freeze_rpythonic_struct( pthread_condattr_t, [
  610.     ( "__size", ( ctypes.c_char * 4 ) ),
  611.     ( "__align", ctypes.c_int ),
  612. ])
  613.  
  614. __freeze_rpythonic_struct( pthread_rwlock_t, [
  615.     ( "__data", __data ),
  616.     ( "__size", ( ctypes.c_char * 32 ) ),
  617.     ( "__align", ctypes.c_int64 ),
  618. ])
  619.  
  620. __freeze_rpythonic_struct( pthread_rwlockattr_t, [
  621.     ( "__size", ( ctypes.c_char * 8 ) ),
  622.     ( "__align", ctypes.c_int64 ),
  623. ])
  624.  
  625. __freeze_rpythonic_struct( pthread_barrier_t, [
  626.     ( "__size", ( ctypes.c_char * 20 ) ),
  627.     ( "__align", ctypes.c_int64 ),
  628. ])
  629.  
  630. __freeze_rpythonic_struct( pthread_barrierattr_t, [
  631.     ( "__size", ( ctypes.c_char * 4 ) ),
  632.     ( "__align", ctypes.c_int ),
  633. ])
  634.  
  635. __freeze_rpythonic_struct( random_data, [
  636.     ( "fptr", ctypes.POINTER(ctypes.c_int) ),
  637.     ( "rptr", ctypes.POINTER(ctypes.c_int) ),
  638.     ( "state", ctypes.POINTER(ctypes.c_int) ),
  639.     ( "rand_type", ctypes.c_int ),
  640.     ( "rand_deg", ctypes.c_int ),
  641.     ( "rand_sep", ctypes.c_int ),
  642.     ( "end_ptr", ctypes.POINTER(ctypes.c_int) ),
  643. ])
  644.  
  645. __freeze_rpythonic_struct( drand48_data, [
  646.     ( "__x", ( ctypes.c_uint16 * 3 ) ),
  647.     ( "__old_x", ( ctypes.c_uint16 * 3 ) ),
  648.     ( "__c", ctypes.c_uint16 ),
  649.     ( "__init", ctypes.c_uint16 ),
  650.     ( "__a", ctypes.c_ulonglong ),
  651. ])
  652.  
  653. __freeze_rpythonic_struct( exception, [
  654.     ( "type", ctypes.c_int ),
  655.     ( "name", ctypes.POINTER(ctypes.c_char) ),
  656.     ( "arg1", ctypes.c_double ),
  657.     ( "arg2", ctypes.c_double ),
  658.     ( "retval", ctypes.c_double ),
  659. ])
  660.  
  661. __freeze_rpythonic_struct( __locale_data, [
  662. ])
  663.  
  664. __freeze_rpythonic_struct( __locale_struct, [
  665.     ( "__locales", ctypes.POINTER(( __locale_data * 13 )) ),
  666.     ( "__ctype_b", ctypes.POINTER(ctypes.c_uint16) ),
  667.     ( "__ctype_tolower", ctypes.POINTER(ctypes.c_int) ),
  668.     ( "__ctype_toupper", ctypes.POINTER(ctypes.c_int) ),
  669.     ( "__names", ctypes.POINTER(( ctypes.c_char * 13 )) ),
  670. ])
  671.  
  672. __freeze_rpythonic_struct( dxWorld, [
  673. ])
  674.  
  675. __freeze_rpythonic_struct( dxSpace, [
  676. ])
  677.  
  678. __freeze_rpythonic_struct( dxBody, [
  679. ])
  680.  
  681. __freeze_rpythonic_struct( dxGeom, [
  682. ])
  683.  
  684. __freeze_rpythonic_struct( dxJoint, [
  685. ])
  686.  
  687. __freeze_rpythonic_struct( dxJointNode, [
  688. ])
  689.  
  690. __freeze_rpythonic_struct( dxJointGroup, [
  691. ])
  692.  
  693. __freeze_rpythonic_struct( dJointFeedback, [
  694.     ( "f1", ( ctypes.c_double * 4 ) ),
  695.     ( "t1", ( ctypes.c_double * 4 ) ),
  696.     ( "f2", ( ctypes.c_double * 4 ) ),
  697.     ( "t2", ( ctypes.c_double * 4 ) ),
  698. ])
  699.  
  700. __freeze_rpythonic_struct( dSurfaceParameters, [
  701.     ( "mode", ctypes.c_int ),
  702.     ( "mu", ctypes.c_double ),
  703.     ( "mu2", ctypes.c_double ),
  704.     ( "bounce", ctypes.c_double ),
  705.     ( "bounce_vel", ctypes.c_double ),
  706.     ( "soft_erp", ctypes.c_double ),
  707.     ( "soft_cfm", ctypes.c_double ),
  708.     ( "motion1", ctypes.c_double ),
  709.     ( "motion2", ctypes.c_double ),
  710.     ( "motionN", ctypes.c_double ),
  711.     ( "slip1", ctypes.c_double ),
  712.     ( "slip2", ctypes.c_double ),
  713. ])
  714.  
  715. __freeze_rpythonic_struct( dContactGeom, [
  716.     ( "pos", ( ctypes.c_double * 4 ) ),
  717.     ( "normal", ( ctypes.c_double * 4 ) ),
  718.     ( "depth", ctypes.c_double ),
  719.     ( "g1", ctypes.POINTER(dxGeom) ),
  720.     ( "g2", ctypes.POINTER(dxGeom) ),
  721.     ( "side1", ctypes.c_int ),
  722.     ( "side2", ctypes.c_int ),
  723. ])
  724.  
  725. __freeze_rpythonic_struct( dContact, [
  726.     ( "surface", dSurfaceParameters ),
  727.     ( "geom", dContactGeom ),
  728.     ( "fdir1", ( ctypes.c_double * 4 ) ),
  729. ])
  730.  
  731. __freeze_rpythonic_struct( dStopwatch, [
  732.     ( "time", ctypes.c_double ),
  733.     ( "cc", ( ctypes.c_ulong * 2 ) ),
  734. ])
  735.  
  736. __freeze_rpythonic_struct( dMass, [
  737.     ( "mass", ctypes.c_double ),
  738.     ( "c", ( ctypes.c_double * 4 ) ),
  739.     ( "I", ( ctypes.c_double * 12 ) ),
  740. ])
  741.  
  742. __freeze_rpythonic_struct( dxTriMeshData, [
  743. ])
  744.  
  745. __freeze_rpythonic_struct( dxHeightfieldData, [
  746. ])
  747.  
  748. __freeze_rpythonic_struct( dGeomClass, [
  749.     ( "bytes", ctypes.c_int ),
  750.     ( "collider", ctypes.POINTER(ctypes.CFUNCTYPE(ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.POINTER(dContactGeom),ctypes.c_int,), ctypes.c_int,)) ),
  751.     ( "aabb", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),( ctypes.c_double * 6 ),) ),
  752.     ( "aabb_test", ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),( ctypes.c_double * 6 ),) ),
  753.     ( "dtor", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(dxGeom),) ),
  754. ])
  755.  
  756. ## wrapper functions ##
  757. _IO_getc = _rpythonic_function_(        "_IO_getc", ctypes.c_int, [
  758.     ("__fp",        ctypes.POINTER(_IO_FILE)),] )
  759.  
  760. _IO_putc = _rpythonic_function_(        "_IO_putc", ctypes.c_int, [
  761.     ("__c",     ctypes.c_int),
  762.     ("__fp",        ctypes.POINTER(_IO_FILE)),] )
  763.  
  764. _IO_feof = _rpythonic_function_(        "_IO_feof", ctypes.c_int, [
  765.     ("__fp",        ctypes.POINTER(_IO_FILE)),] )
  766.  
  767. _IO_ferror = _rpythonic_function_(      "_IO_ferror", ctypes.c_int, [
  768.     ("__fp",        ctypes.POINTER(_IO_FILE)),] )
  769.  
  770. _IO_peekc_locked = _rpythonic_function_(        "_IO_peekc_locked", ctypes.c_int, [
  771.     ("__fp",        ctypes.POINTER(_IO_FILE)),] )
  772.  
  773. _IO_flockfile = _rpythonic_function_(       "_IO_flockfile", ctypes.c_void_p, [
  774.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  775.  
  776. _IO_funlockfile = _rpythonic_function_(     "_IO_funlockfile", ctypes.c_void_p, [
  777.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  778.  
  779. _IO_ftrylockfile = _rpythonic_function_(        "_IO_ftrylockfile", ctypes.c_int, [
  780.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  781.  
  782. _IO_vfscanf = _rpythonic_function_(     "_IO_vfscanf", ctypes.c_int, [
  783.     ("__restrict",      ctypes.POINTER(_IO_FILE)),
  784.     ("__restrict",      ctypes.POINTER(ctypes.c_char)),
  785.     ("none",        ctypes.c_char),
  786.     ("__restrict",      ctypes.POINTER(ctypes.c_int)),] )
  787.  
  788. _IO_vfprintf = _rpythonic_function_(        "_IO_vfprintf", ctypes.c_int, [
  789.     ("__restrict",      ctypes.POINTER(_IO_FILE)),
  790.     ("__restrict",      ctypes.POINTER(ctypes.c_char)),
  791.     ("none",        ctypes.c_char),] )
  792.  
  793. _IO_padn = _rpythonic_function_(        "_IO_padn", ctypes.c_int, [
  794.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  795.     ("none",        ctypes.c_int),
  796.     ("none",        ctypes.c_int),] )
  797.  
  798. _IO_sgetn = _rpythonic_function_(       "_IO_sgetn", ctypes.c_uint, [
  799.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  800.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  801.     ("none",        ctypes.c_uint),] )
  802.  
  803. _IO_seekoff = _rpythonic_function_(     "_IO_seekoff", ctypes.c_longlong, [
  804.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  805.     ("none",        ctypes.c_longlong),
  806.     ("none",        ctypes.c_int),
  807.     ("none",        ctypes.c_int),] )
  808.  
  809. _IO_seekpos = _rpythonic_function_(     "_IO_seekpos", ctypes.c_longlong, [
  810.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  811.     ("none",        ctypes.c_longlong),
  812.     ("none",        ctypes.c_int),] )
  813.  
  814. _IO_free_backup_area = _rpythonic_function_(        "_IO_free_backup_area", ctypes.c_void_p, [
  815.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  816.  
  817. remove = _rpythonic_function_(      "remove", ctypes.c_int, [
  818.     ("__filename",      ctypes.POINTER(ctypes.c_char)),] )
  819.  
  820. rename = _rpythonic_function_(      "rename", ctypes.c_int, [
  821.     ("__old",       ctypes.POINTER(ctypes.c_char)),
  822.     ("__new",       ctypes.POINTER(ctypes.c_char)),] )
  823.  
  824. renameat = _rpythonic_function_(        "renameat", ctypes.c_int, [
  825.     ("__oldfd",     ctypes.c_int),
  826.     ("__old",       ctypes.POINTER(ctypes.c_char)),
  827.     ("__newfd",     ctypes.c_int),
  828.     ("__new",       ctypes.POINTER(ctypes.c_char)),] )
  829.  
  830. tmpfile = _rpythonic_function_(     "tmpfile", ctypes.POINTER(_IO_FILE), [] )
  831.  
  832. tmpnam = _rpythonic_function_(      "tmpnam", ctypes.POINTER(ctypes.c_char), [
  833.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  834.  
  835. tmpnam_r = _rpythonic_function_(        "tmpnam_r", ctypes.POINTER(ctypes.c_char), [
  836.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  837.  
  838. tempnam = _rpythonic_function_(     "tempnam", ctypes.POINTER(ctypes.c_char), [
  839.     ("__dir",       ctypes.POINTER(ctypes.c_char)),
  840.     ("__pfx",       ctypes.POINTER(ctypes.c_char)),] )
  841.  
  842. fclose = _rpythonic_function_(      "fclose", ctypes.c_int, [
  843.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  844.  
  845. fflush = _rpythonic_function_(      "fflush", ctypes.c_int, [
  846.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  847.  
  848. fflush_unlocked = _rpythonic_function_(     "fflush_unlocked", ctypes.c_int, [
  849.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  850.  
  851. fopen = _rpythonic_function_(       "fopen", ctypes.POINTER(_IO_FILE), [
  852.     ("__filename",      ctypes.POINTER(ctypes.c_char)),
  853.     ("__modes",     ctypes.POINTER(ctypes.c_char)),] )
  854.  
  855. freopen = _rpythonic_function_(     "freopen", ctypes.POINTER(_IO_FILE), [
  856.     ("__filename",      ctypes.POINTER(ctypes.c_char)),
  857.     ("__modes",     ctypes.POINTER(ctypes.c_char)),
  858.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  859.  
  860. fdopen = _rpythonic_function_(      "fdopen", ctypes.POINTER(_IO_FILE), [
  861.     ("__fd",        ctypes.c_int),
  862.     ("__modes",     ctypes.POINTER(ctypes.c_char)),] )
  863.  
  864. fmemopen = _rpythonic_function_(        "fmemopen", ctypes.POINTER(_IO_FILE), [
  865.     ("__s",     ctypes.POINTER(ctypes.c_void_p)),
  866.     ("__len",       ctypes.c_uint),
  867.     ("__modes",     ctypes.POINTER(ctypes.c_char)),] )
  868.  
  869. open_memstream = _rpythonic_function_(      "open_memstream", ctypes.POINTER(_IO_FILE), [
  870.     ("__bufloc",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  871.     ("__sizeloc",       ctypes.POINTER(ctypes.c_uint)),] )
  872.  
  873. setbuf = _rpythonic_function_(      "setbuf", ctypes.c_void_p, [
  874.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  875.     ("__buf",       ctypes.POINTER(ctypes.c_char)),] )
  876.  
  877. setvbuf = _rpythonic_function_(     "setvbuf", ctypes.c_int, [
  878.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  879.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  880.     ("__modes",     ctypes.c_int),
  881.     ("__n",     ctypes.c_uint),] )
  882.  
  883. setbuffer = _rpythonic_function_(       "setbuffer", ctypes.c_void_p, [
  884.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  885.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  886.     ("__size",      ctypes.c_uint),] )
  887.  
  888. setlinebuf = _rpythonic_function_(      "setlinebuf", ctypes.c_void_p, [
  889.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  890.  
  891. fprintf = _rpythonic_function_(     "fprintf", ctypes.c_int, [
  892.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  893.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  894.  
  895. printf = _rpythonic_function_(      "printf", ctypes.c_int, [
  896.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  897.  
  898. sprintf = _rpythonic_function_(     "sprintf", ctypes.c_int, [
  899.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  900.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  901.  
  902. vfprintf = _rpythonic_function_(        "vfprintf", ctypes.c_int, [
  903.     ("__s",     ctypes.POINTER(_IO_FILE)),
  904.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  905.     ("__arg",       ctypes.c_char),] )
  906.  
  907. vprintf = _rpythonic_function_(     "vprintf", ctypes.c_int, [
  908.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  909.     ("__arg",       ctypes.c_char),] )
  910.  
  911. vsprintf = _rpythonic_function_(        "vsprintf", ctypes.c_int, [
  912.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  913.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  914.     ("__arg",       ctypes.c_char),] )
  915.  
  916. snprintf = _rpythonic_function_(        "snprintf", ctypes.c_int, [
  917.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  918.     ("__maxlen",        ctypes.c_uint),
  919.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  920.  
  921. vsnprintf = _rpythonic_function_(       "vsnprintf", ctypes.c_int, [
  922.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  923.     ("__maxlen",        ctypes.c_uint),
  924.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  925.     ("__arg",       ctypes.c_char),] )
  926.  
  927. vdprintf = _rpythonic_function_(        "vdprintf", ctypes.c_int, [
  928.     ("__fd",        ctypes.c_int),
  929.     ("__fmt",       ctypes.POINTER(ctypes.c_char)),
  930.     ("__arg",       ctypes.c_char),] )
  931.  
  932. dprintf = _rpythonic_function_(     "dprintf", ctypes.c_int, [
  933.     ("__fd",        ctypes.c_int),
  934.     ("__fmt",       ctypes.POINTER(ctypes.c_char)),] )
  935.  
  936. fscanf = _rpythonic_function_(      "fscanf", ctypes.c_int, [
  937.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  938.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  939.  
  940. scanf = _rpythonic_function_(       "scanf", ctypes.c_int, [
  941.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  942.  
  943. sscanf = _rpythonic_function_(      "sscanf", ctypes.c_int, [
  944.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  945.     ("__format",        ctypes.POINTER(ctypes.c_char)),] )
  946.  
  947. vfscanf = _rpythonic_function_(     "vfscanf", ctypes.c_int, [
  948.     ("__s",     ctypes.POINTER(_IO_FILE)),
  949.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  950.     ("__arg",       ctypes.c_char),] )
  951.  
  952. vscanf = _rpythonic_function_(      "vscanf", ctypes.c_int, [
  953.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  954.     ("__arg",       ctypes.c_char),] )
  955.  
  956. vsscanf = _rpythonic_function_(     "vsscanf", ctypes.c_int, [
  957.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  958.     ("__format",        ctypes.POINTER(ctypes.c_char)),
  959.     ("__arg",       ctypes.c_char),] )
  960.  
  961. fgetc = _rpythonic_function_(       "fgetc", ctypes.c_int, [
  962.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  963.  
  964. getc = _rpythonic_function_(        "getc", ctypes.c_int, [
  965.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  966.  
  967. getchar = _rpythonic_function_(     "getchar", ctypes.c_int, [] )
  968.  
  969. getc_unlocked = _rpythonic_function_(       "getc_unlocked", ctypes.c_int, [
  970.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  971.  
  972. getchar_unlocked = _rpythonic_function_(        "getchar_unlocked", ctypes.c_int, [] )
  973.  
  974. fgetc_unlocked = _rpythonic_function_(      "fgetc_unlocked", ctypes.c_int, [
  975.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  976.  
  977. fputc = _rpythonic_function_(       "fputc", ctypes.c_int, [
  978.     ("__c",     ctypes.c_int),
  979.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  980.  
  981. putc = _rpythonic_function_(        "putc", ctypes.c_int, [
  982.     ("__c",     ctypes.c_int),
  983.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  984.  
  985. putchar = _rpythonic_function_(     "putchar", ctypes.c_int, [
  986.     ("__c",     ctypes.c_int),] )
  987.  
  988. fputc_unlocked = _rpythonic_function_(      "fputc_unlocked", ctypes.c_int, [
  989.     ("__c",     ctypes.c_int),
  990.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  991.  
  992. putc_unlocked = _rpythonic_function_(       "putc_unlocked", ctypes.c_int, [
  993.     ("__c",     ctypes.c_int),
  994.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  995.  
  996. putchar_unlocked = _rpythonic_function_(        "putchar_unlocked", ctypes.c_int, [
  997.     ("__c",     ctypes.c_int),] )
  998.  
  999. getw = _rpythonic_function_(        "getw", ctypes.c_int, [
  1000.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1001.  
  1002. putw = _rpythonic_function_(        "putw", ctypes.c_int, [
  1003.     ("__w",     ctypes.c_int),
  1004.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1005.  
  1006. fgets = _rpythonic_function_(       "fgets", ctypes.POINTER(ctypes.c_char), [
  1007.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1008.     ("__n",     ctypes.c_int),
  1009.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1010.  
  1011. gets = _rpythonic_function_(        "gets", ctypes.POINTER(ctypes.c_char), [
  1012.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  1013.  
  1014. getdelim = _rpythonic_function_(        "getdelim", ctypes.c_int, [
  1015.     ("__lineptr",       ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1016.     ("__n",     ctypes.POINTER(ctypes.c_uint)),
  1017.     ("__delimiter",     ctypes.c_int),
  1018.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1019.  
  1020. getline = _rpythonic_function_(     "getline", ctypes.c_int, [
  1021.     ("__lineptr",       ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1022.     ("__n",     ctypes.POINTER(ctypes.c_uint)),
  1023.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1024.  
  1025. fputs = _rpythonic_function_(       "fputs", ctypes.c_int, [
  1026.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1027.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1028.  
  1029. puts = _rpythonic_function_(        "puts", ctypes.c_int, [
  1030.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  1031.  
  1032. ungetc = _rpythonic_function_(      "ungetc", ctypes.c_int, [
  1033.     ("__c",     ctypes.c_int),
  1034.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1035.  
  1036. fread = _rpythonic_function_(       "fread", ctypes.c_uint, [
  1037.     ("__ptr",       ctypes.POINTER(ctypes.c_void_p)),
  1038.     ("__size",      ctypes.c_uint),
  1039.     ("__n",     ctypes.c_uint),
  1040.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1041.  
  1042. fwrite = _rpythonic_function_(      "fwrite", ctypes.c_uint, [
  1043.     ("__ptr",       ctypes.POINTER(ctypes.c_void_p)),
  1044.     ("__size",      ctypes.c_uint),
  1045.     ("__n",     ctypes.c_uint),
  1046.     ("__s",     ctypes.POINTER(_IO_FILE)),] )
  1047.  
  1048. fread_unlocked = _rpythonic_function_(      "fread_unlocked", ctypes.c_uint, [
  1049.     ("__ptr",       ctypes.POINTER(ctypes.c_void_p)),
  1050.     ("__size",      ctypes.c_uint),
  1051.     ("__n",     ctypes.c_uint),
  1052.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1053.  
  1054. fwrite_unlocked = _rpythonic_function_(     "fwrite_unlocked", ctypes.c_uint, [
  1055.     ("__ptr",       ctypes.POINTER(ctypes.c_void_p)),
  1056.     ("__size",      ctypes.c_uint),
  1057.     ("__n",     ctypes.c_uint),
  1058.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1059.  
  1060. fseek = _rpythonic_function_(       "fseek", ctypes.c_int, [
  1061.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  1062.     ("__off",       ctypes.c_int64),
  1063.     ("__whence",        ctypes.c_int),] )
  1064.  
  1065. ftell = _rpythonic_function_(       "ftell", ctypes.c_int64, [
  1066.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1067.  
  1068. rewind = _rpythonic_function_(      "rewind", ctypes.c_void_p, [
  1069.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1070.  
  1071. fseeko = _rpythonic_function_(      "fseeko", ctypes.c_int, [
  1072.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  1073.     ("__off",       ctypes.c_int64),
  1074.     ("__whence",        ctypes.c_int),] )
  1075.  
  1076. ftello = _rpythonic_function_(      "ftello", ctypes.c_int64, [
  1077.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1078.  
  1079. fgetpos = _rpythonic_function_(     "fgetpos", ctypes.c_int, [
  1080.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  1081.     ("__pos",       ctypes.POINTER(_G_fpos_t)),] )
  1082.  
  1083. fsetpos = _rpythonic_function_(     "fsetpos", ctypes.c_int, [
  1084.     ("__stream",        ctypes.POINTER(_IO_FILE)),
  1085.     ("__pos",       ctypes.POINTER(_G_fpos_t)),] )
  1086.  
  1087. clearerr = _rpythonic_function_(        "clearerr", ctypes.c_void_p, [
  1088.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1089.  
  1090. feof = _rpythonic_function_(        "feof", ctypes.c_int, [
  1091.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1092.  
  1093. ferror = _rpythonic_function_(      "ferror", ctypes.c_int, [
  1094.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1095.  
  1096. clearerr_unlocked = _rpythonic_function_(       "clearerr_unlocked", ctypes.c_void_p, [
  1097.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1098.  
  1099. feof_unlocked = _rpythonic_function_(       "feof_unlocked", ctypes.c_int, [
  1100.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1101.  
  1102. ferror_unlocked = _rpythonic_function_(     "ferror_unlocked", ctypes.c_int, [
  1103.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1104.  
  1105. perror = _rpythonic_function_(      "perror", ctypes.c_void_p, [
  1106.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  1107.  
  1108. fileno = _rpythonic_function_(      "fileno", ctypes.c_int, [
  1109.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1110.  
  1111. fileno_unlocked = _rpythonic_function_(     "fileno_unlocked", ctypes.c_int, [
  1112.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1113.  
  1114. popen = _rpythonic_function_(       "popen", ctypes.POINTER(_IO_FILE), [
  1115.     ("__command",       ctypes.POINTER(ctypes.c_char)),
  1116.     ("__modes",     ctypes.POINTER(ctypes.c_char)),] )
  1117.  
  1118. pclose = _rpythonic_function_(      "pclose", ctypes.c_int, [
  1119.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1120.  
  1121. ctermid = _rpythonic_function_(     "ctermid", ctypes.POINTER(ctypes.c_char), [
  1122.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  1123.  
  1124. flockfile = _rpythonic_function_(       "flockfile", ctypes.c_void_p, [
  1125.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1126.  
  1127. ftrylockfile = _rpythonic_function_(        "ftrylockfile", ctypes.c_int, [
  1128.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1129.  
  1130. funlockfile = _rpythonic_function_(     "funlockfile", ctypes.c_void_p, [
  1131.     ("__stream",        ctypes.POINTER(_IO_FILE)),] )
  1132.  
  1133. atof = _rpythonic_function_(        "atof", ctypes.c_double, [
  1134.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),] )
  1135.  
  1136. atoi = _rpythonic_function_(        "atoi", ctypes.c_int, [
  1137.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),] )
  1138.  
  1139. atol = _rpythonic_function_(        "atol", ctypes.c_int64, [
  1140.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),] )
  1141.  
  1142. atoll = _rpythonic_function_(       "atoll", ctypes.c_longlong, [
  1143.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),] )
  1144.  
  1145. strtod = _rpythonic_function_(      "strtod", ctypes.c_double, [
  1146.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1147.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),] )
  1148.  
  1149. strtof = _rpythonic_function_(      "strtof", ctypes.c_float, [
  1150.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1151.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),] )
  1152.  
  1153. strtold = _rpythonic_function_(     "strtold", ctypes.c_longdouble, [
  1154.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1155.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),] )
  1156.  
  1157. strtol = _rpythonic_function_(      "strtol", ctypes.c_int64, [
  1158.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1159.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1160.     ("__base",      ctypes.c_int),] )
  1161.  
  1162. strtoul = _rpythonic_function_(     "strtoul", ctypes.c_uint64, [
  1163.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1164.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1165.     ("__base",      ctypes.c_int),] )
  1166.  
  1167. strtoq = _rpythonic_function_(      "strtoq", ctypes.c_longlong, [
  1168.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1169.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1170.     ("__base",      ctypes.c_int),] )
  1171.  
  1172. strtouq = _rpythonic_function_(     "strtouq", ctypes.c_ulonglong, [
  1173.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1174.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1175.     ("__base",      ctypes.c_int),] )
  1176.  
  1177. strtoll = _rpythonic_function_(     "strtoll", ctypes.c_longlong, [
  1178.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1179.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1180.     ("__base",      ctypes.c_int),] )
  1181.  
  1182. strtoull = _rpythonic_function_(        "strtoull", ctypes.c_ulonglong, [
  1183.     ("__nptr",      ctypes.POINTER(ctypes.c_char)),
  1184.     ("__endptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1185.     ("__base",      ctypes.c_int),] )
  1186.  
  1187. l64a = _rpythonic_function_(        "l64a", ctypes.POINTER(ctypes.c_char), [
  1188.     ("__n",     ctypes.c_int64),] )
  1189.  
  1190. a64l = _rpythonic_function_(        "a64l", ctypes.c_int64, [
  1191.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  1192.  
  1193. select = _rpythonic_function_(      "select", ctypes.c_int, [
  1194.     ("__nfds",      ctypes.c_int),
  1195.     ("__readfds",       ctypes.POINTER(fd_set)),
  1196.     ("__writefds",      ctypes.POINTER(fd_set)),
  1197.     ("__exceptfds",     ctypes.POINTER(fd_set)),
  1198.     ("__timeout",       ctypes.POINTER(timeval)),] )
  1199.  
  1200. pselect = _rpythonic_function_(     "pselect", ctypes.c_int, [
  1201.     ("__nfds",      ctypes.c_int),
  1202.     ("__readfds",       ctypes.POINTER(fd_set)),
  1203.     ("__writefds",      ctypes.POINTER(fd_set)),
  1204.     ("__exceptfds",     ctypes.POINTER(fd_set)),
  1205.     ("__timeout",       ctypes.POINTER(timespec)),
  1206.     ("__sigmask",       ctypes.POINTER(__sigset_t)),] )
  1207.  
  1208. gnu_dev_major = _rpythonic_function_(       "gnu_dev_major", ctypes.c_uint, [
  1209.     ("__dev",       ctypes.c_ulonglong),] )
  1210.  
  1211. gnu_dev_minor = _rpythonic_function_(       "gnu_dev_minor", ctypes.c_uint, [
  1212.     ("__dev",       ctypes.c_ulonglong),] )
  1213.  
  1214. gnu_dev_makedev = _rpythonic_function_(     "gnu_dev_makedev", ctypes.c_ulonglong, [
  1215.     ("__major",     ctypes.c_uint),
  1216.     ("__minor",     ctypes.c_uint),] )
  1217.  
  1218. random = _rpythonic_function_(      "random", ctypes.c_int64, [] )
  1219.  
  1220. srandom = _rpythonic_function_(     "srandom", ctypes.c_void_p, [
  1221.     ("__seed",      ctypes.c_uint),] )
  1222.  
  1223. initstate = _rpythonic_function_(       "initstate", ctypes.POINTER(ctypes.c_char), [
  1224.     ("__seed",      ctypes.c_uint),
  1225.     ("__statebuf",      ctypes.POINTER(ctypes.c_char)),
  1226.     ("__statelen",      ctypes.c_uint),] )
  1227.  
  1228. setstate = _rpythonic_function_(        "setstate", ctypes.POINTER(ctypes.c_char), [
  1229.     ("__statebuf",      ctypes.POINTER(ctypes.c_char)),] )
  1230.  
  1231. random_r = _rpythonic_function_(        "random_r", ctypes.c_int, [
  1232.     ("__buf",       ctypes.POINTER(random_data)),
  1233.     ("__result",        ctypes.POINTER(ctypes.c_int)),] )
  1234.  
  1235. srandom_r = _rpythonic_function_(       "srandom_r", ctypes.c_int, [
  1236.     ("__seed",      ctypes.c_uint),
  1237.     ("__buf",       ctypes.POINTER(random_data)),] )
  1238.  
  1239. initstate_r = _rpythonic_function_(     "initstate_r", ctypes.c_int, [
  1240.     ("__seed",      ctypes.c_uint),
  1241.     ("__statebuf",      ctypes.POINTER(ctypes.c_char)),
  1242.     ("__statelen",      ctypes.c_uint),
  1243.     ("__buf",       ctypes.POINTER(random_data)),] )
  1244.  
  1245. setstate_r = _rpythonic_function_(      "setstate_r", ctypes.c_int, [
  1246.     ("__statebuf",      ctypes.POINTER(ctypes.c_char)),
  1247.     ("__buf",       ctypes.POINTER(random_data)),] )
  1248.  
  1249. rand = _rpythonic_function_(        "rand", ctypes.c_int, [] )
  1250.  
  1251. srand = _rpythonic_function_(       "srand", ctypes.c_void_p, [
  1252.     ("__seed",      ctypes.c_uint),] )
  1253.  
  1254. rand_r = _rpythonic_function_(      "rand_r", ctypes.c_int, [
  1255.     ("__seed",      ctypes.POINTER(ctypes.c_uint)),] )
  1256.  
  1257. drand48 = _rpythonic_function_(     "drand48", ctypes.c_double, [] )
  1258.  
  1259. erand48 = _rpythonic_function_(     "erand48", ctypes.c_double, [
  1260.     ("__xsubi",     ( ctypes.c_uint16 * 3 )),] )
  1261.  
  1262. lrand48 = _rpythonic_function_(     "lrand48", ctypes.c_int64, [] )
  1263.  
  1264. nrand48 = _rpythonic_function_(     "nrand48", ctypes.c_int64, [
  1265.     ("__xsubi",     ( ctypes.c_uint16 * 3 )),] )
  1266.  
  1267. mrand48 = _rpythonic_function_(     "mrand48", ctypes.c_int64, [] )
  1268.  
  1269. jrand48 = _rpythonic_function_(     "jrand48", ctypes.c_int64, [
  1270.     ("__xsubi",     ( ctypes.c_uint16 * 3 )),] )
  1271.  
  1272. srand48 = _rpythonic_function_(     "srand48", ctypes.c_void_p, [
  1273.     ("__seedval",       ctypes.c_int64),] )
  1274.  
  1275. seed48 = _rpythonic_function_(      "seed48", ctypes.POINTER(ctypes.c_uint16), [
  1276.     ("__seed16v",       ( ctypes.c_uint16 * 3 )),] )
  1277.  
  1278. lcong48 = _rpythonic_function_(     "lcong48", ctypes.c_void_p, [
  1279.     ("__param",     ( ctypes.c_uint16 * 7 )),] )
  1280.  
  1281. drand48_r = _rpythonic_function_(       "drand48_r", ctypes.c_int, [
  1282.     ("__buffer",        ctypes.POINTER(drand48_data)),
  1283.     ("__result",        ctypes.POINTER(ctypes.c_double)),] )
  1284.  
  1285. erand48_r = _rpythonic_function_(       "erand48_r", ctypes.c_int, [
  1286.     ("__xsubi",     ( ctypes.c_uint16 * 3 )),
  1287.     ("__buffer",        ctypes.POINTER(drand48_data)),
  1288.     ("__result",        ctypes.POINTER(ctypes.c_double)),] )
  1289.  
  1290. lrand48_r = _rpythonic_function_(       "lrand48_r", ctypes.c_int, [
  1291.     ("__buffer",        ctypes.POINTER(drand48_data)),
  1292.     ("__result",        ctypes.POINTER(ctypes.c_int64)),] )
  1293.  
  1294. nrand48_r = _rpythonic_function_(       "nrand48_r", ctypes.c_int, [
  1295.     ("__xsubi",     ( ctypes.c_uint16 * 3 )),
  1296.     ("__buffer",        ctypes.POINTER(drand48_data)),
  1297.     ("__result",        ctypes.POINTER(ctypes.c_int64)),] )
  1298.  
  1299. mrand48_r = _rpythonic_function_(       "mrand48_r", ctypes.c_int, [
  1300.     ("__buffer",        ctypes.POINTER(drand48_data)),
  1301.     ("__result",        ctypes.POINTER(ctypes.c_int64)),] )
  1302.  
  1303. jrand48_r = _rpythonic_function_(       "jrand48_r", ctypes.c_int, [
  1304.     ("__xsubi",     ( ctypes.c_uint16 * 3 )),
  1305.     ("__buffer",        ctypes.POINTER(drand48_data)),
  1306.     ("__result",        ctypes.POINTER(ctypes.c_int64)),] )
  1307.  
  1308. srand48_r = _rpythonic_function_(       "srand48_r", ctypes.c_int, [
  1309.     ("__seedval",       ctypes.c_int64),
  1310.     ("__buffer",        ctypes.POINTER(drand48_data)),] )
  1311.  
  1312. seed48_r = _rpythonic_function_(        "seed48_r", ctypes.c_int, [
  1313.     ("__seed16v",       ( ctypes.c_uint16 * 3 )),
  1314.     ("__buffer",        ctypes.POINTER(drand48_data)),] )
  1315.  
  1316. lcong48_r = _rpythonic_function_(       "lcong48_r", ctypes.c_int, [
  1317.     ("__param",     ( ctypes.c_uint16 * 7 )),
  1318.     ("__buffer",        ctypes.POINTER(drand48_data)),] )
  1319.  
  1320. malloc = _rpythonic_function_(      "malloc", ctypes.POINTER(ctypes.c_void_p), [
  1321.     ("__size",      ctypes.c_uint),] )
  1322.  
  1323. calloc = _rpythonic_function_(      "calloc", ctypes.POINTER(ctypes.c_void_p), [
  1324.     ("__nmemb",     ctypes.c_uint),
  1325.     ("__size",      ctypes.c_uint),] )
  1326.  
  1327. realloc = _rpythonic_function_(     "realloc", ctypes.POINTER(ctypes.c_void_p), [
  1328.     ("__ptr",       ctypes.POINTER(ctypes.c_void_p)),
  1329.     ("__size",      ctypes.c_uint),] )
  1330.  
  1331. free = _rpythonic_function_(        "free", ctypes.c_void_p, [("__ptr",     ctypes.c_void_p)] )
  1332.  
  1333. cfree = _rpythonic_function_(       "cfree", ctypes.c_void_p, [("__ptr",        ctypes.c_void_p)] )
  1334.  
  1335. alloca = _rpythonic_function_(      "alloca", ctypes.POINTER(ctypes.c_void_p), [
  1336.     ("__size",      ctypes.c_uint),] )
  1337.  
  1338. valloc = _rpythonic_function_(      "valloc", ctypes.POINTER(ctypes.c_void_p), [
  1339.     ("__size",      ctypes.c_uint),] )
  1340.  
  1341. posix_memalign = _rpythonic_function_(      "posix_memalign", ctypes.c_int, [
  1342.     ("__memptr",        ctypes.POINTER(ctypes.POINTER(ctypes.c_void_p))),
  1343.     ("__alignment",     ctypes.c_uint),
  1344.     ("__size",      ctypes.c_uint),] )
  1345.  
  1346. abort = _rpythonic_function_(       "abort", ctypes.c_void_p, [] )
  1347.  
  1348. atexit = _rpythonic_function_(      "atexit", ctypes.c_int, [
  1349.     ("__func",      ctypes.c_void_p),] )
  1350.  
  1351. on_exit = _rpythonic_function_(     "on_exit", ctypes.c_int, [
  1352.     ("__func",      ctypes.c_void_p),
  1353.     ("__arg",       ctypes.POINTER(ctypes.c_void_p)),] )
  1354.  
  1355. exit = _rpythonic_function_(        "exit", ctypes.c_void_p, [
  1356.     ("__status",        ctypes.c_int),] )
  1357.  
  1358. _Exit = _rpythonic_function_(       "_Exit", ctypes.c_void_p, [
  1359.     ("__status",        ctypes.c_int),] )
  1360.  
  1361. getenv = _rpythonic_function_(      "getenv", ctypes.POINTER(ctypes.c_char), [
  1362.     ("__name",      ctypes.POINTER(ctypes.c_char)),] )
  1363.  
  1364. putenv = _rpythonic_function_(      "putenv", ctypes.c_int, [
  1365.     ("__string",        ctypes.POINTER(ctypes.c_char)),] )
  1366.  
  1367. setenv = _rpythonic_function_(      "setenv", ctypes.c_int, [
  1368.     ("__name",      ctypes.POINTER(ctypes.c_char)),
  1369.     ("__value",     ctypes.POINTER(ctypes.c_char)),
  1370.     ("__replace",       ctypes.c_int),] )
  1371.  
  1372. unsetenv = _rpythonic_function_(        "unsetenv", ctypes.c_int, [
  1373.     ("__name",      ctypes.POINTER(ctypes.c_char)),] )
  1374.  
  1375. clearenv = _rpythonic_function_(        "clearenv", ctypes.c_int, [] )
  1376.  
  1377. mktemp = _rpythonic_function_(      "mktemp", ctypes.POINTER(ctypes.c_char), [
  1378.     ("__template",      ctypes.POINTER(ctypes.c_char)),] )
  1379.  
  1380. mkstemp = _rpythonic_function_(     "mkstemp", ctypes.c_int, [
  1381.     ("__template",      ctypes.POINTER(ctypes.c_char)),] )
  1382.  
  1383. mkstemps = _rpythonic_function_(        "mkstemps", ctypes.c_int, [
  1384.     ("__template",      ctypes.POINTER(ctypes.c_char)),
  1385.     ("__suffixlen",     ctypes.c_int),] )
  1386.  
  1387. mkdtemp = _rpythonic_function_(     "mkdtemp", ctypes.POINTER(ctypes.c_char), [
  1388.     ("__template",      ctypes.POINTER(ctypes.c_char)),] )
  1389.  
  1390. system = _rpythonic_function_(      "system", ctypes.c_int, [
  1391.     ("__command",       ctypes.POINTER(ctypes.c_char)),] )
  1392.  
  1393. realpath = _rpythonic_function_(        "realpath", ctypes.POINTER(ctypes.c_char), [
  1394.     ("__name",      ctypes.POINTER(ctypes.c_char)),
  1395.     ("__resolved",      ctypes.POINTER(ctypes.c_char)),] )
  1396.  
  1397. bsearch = _rpythonic_function_(     "bsearch", ctypes.POINTER(ctypes.c_void_p), [
  1398.     ("__key",       ctypes.POINTER(ctypes.c_void_p)),
  1399.     ("__base",      ctypes.POINTER(ctypes.c_void_p)),
  1400.     ("__nmemb",     ctypes.c_uint),
  1401.     ("__size",      ctypes.c_uint),
  1402.     ("__compar",        ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(ctypes.c_void_p),ctypes.POINTER(ctypes.c_void_p),)),] )
  1403.  
  1404. qsort = _rpythonic_function_(       "qsort", ctypes.c_void_p, [
  1405.     ("__base",      ctypes.POINTER(ctypes.c_void_p)),
  1406.     ("__nmemb",     ctypes.c_uint),
  1407.     ("__size",      ctypes.c_uint),
  1408.     ("__compar",        ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(ctypes.c_void_p),ctypes.POINTER(ctypes.c_void_p),)),] )
  1409.  
  1410. abs = _rpythonic_function_(     "abs", ctypes.c_int, [
  1411.     ("__x",     ctypes.c_int),] )
  1412.  
  1413. div = _rpythonic_function_(     "div", ctypes.c_void_p, [
  1414.     ("__numer",     ctypes.c_int),
  1415.     ("__denom",     ctypes.c_int),] )
  1416.  
  1417. labs = _rpythonic_function_(        "labs", ctypes.c_int64, [
  1418.     ("__x",     ctypes.c_int64),] )
  1419.  
  1420. llabs = _rpythonic_function_(       "llabs", ctypes.c_longlong, [
  1421.     ("__x",     ctypes.c_longlong),] )
  1422.  
  1423. ldiv = _rpythonic_function_(        "ldiv", ctypes.c_void_p, [
  1424.     ("__numer",     ctypes.c_int64),
  1425.     ("__denom",     ctypes.c_int64),] )
  1426.  
  1427. lldiv = _rpythonic_function_(       "lldiv", ctypes.c_void_p, [
  1428.     ("__numer",     ctypes.c_longlong),
  1429.     ("__denom",     ctypes.c_longlong),] )
  1430.  
  1431. ecvt = _rpythonic_function_(        "ecvt", ctypes.POINTER(ctypes.c_char), [
  1432.     ("__value",     ctypes.c_double),
  1433.     ("__ndigit",        ctypes.c_int),
  1434.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1435.     ("__sign",      ctypes.POINTER(ctypes.c_int)),] )
  1436.  
  1437. fcvt = _rpythonic_function_(        "fcvt", ctypes.POINTER(ctypes.c_char), [
  1438.     ("__value",     ctypes.c_double),
  1439.     ("__ndigit",        ctypes.c_int),
  1440.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1441.     ("__sign",      ctypes.POINTER(ctypes.c_int)),] )
  1442.  
  1443. gcvt = _rpythonic_function_(        "gcvt", ctypes.POINTER(ctypes.c_char), [
  1444.     ("__value",     ctypes.c_double),
  1445.     ("__ndigit",        ctypes.c_int),
  1446.     ("__buf",       ctypes.POINTER(ctypes.c_char)),] )
  1447.  
  1448. qecvt = _rpythonic_function_(       "qecvt", ctypes.POINTER(ctypes.c_char), [
  1449.     ("__value",     ctypes.c_longdouble),
  1450.     ("__ndigit",        ctypes.c_int),
  1451.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1452.     ("__sign",      ctypes.POINTER(ctypes.c_int)),] )
  1453.  
  1454. qfcvt = _rpythonic_function_(       "qfcvt", ctypes.POINTER(ctypes.c_char), [
  1455.     ("__value",     ctypes.c_longdouble),
  1456.     ("__ndigit",        ctypes.c_int),
  1457.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1458.     ("__sign",      ctypes.POINTER(ctypes.c_int)),] )
  1459.  
  1460. qgcvt = _rpythonic_function_(       "qgcvt", ctypes.POINTER(ctypes.c_char), [
  1461.     ("__value",     ctypes.c_longdouble),
  1462.     ("__ndigit",        ctypes.c_int),
  1463.     ("__buf",       ctypes.POINTER(ctypes.c_char)),] )
  1464.  
  1465. ecvt_r = _rpythonic_function_(      "ecvt_r", ctypes.c_int, [
  1466.     ("__value",     ctypes.c_double),
  1467.     ("__ndigit",        ctypes.c_int),
  1468.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1469.     ("__sign",      ctypes.POINTER(ctypes.c_int)),
  1470.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  1471.     ("__len",       ctypes.c_uint),] )
  1472.  
  1473. fcvt_r = _rpythonic_function_(      "fcvt_r", ctypes.c_int, [
  1474.     ("__value",     ctypes.c_double),
  1475.     ("__ndigit",        ctypes.c_int),
  1476.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1477.     ("__sign",      ctypes.POINTER(ctypes.c_int)),
  1478.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  1479.     ("__len",       ctypes.c_uint),] )
  1480.  
  1481. qecvt_r = _rpythonic_function_(     "qecvt_r", ctypes.c_int, [
  1482.     ("__value",     ctypes.c_longdouble),
  1483.     ("__ndigit",        ctypes.c_int),
  1484.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1485.     ("__sign",      ctypes.POINTER(ctypes.c_int)),
  1486.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  1487.     ("__len",       ctypes.c_uint),] )
  1488.  
  1489. qfcvt_r = _rpythonic_function_(     "qfcvt_r", ctypes.c_int, [
  1490.     ("__value",     ctypes.c_longdouble),
  1491.     ("__ndigit",        ctypes.c_int),
  1492.     ("__decpt",     ctypes.POINTER(ctypes.c_int)),
  1493.     ("__sign",      ctypes.POINTER(ctypes.c_int)),
  1494.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  1495.     ("__len",       ctypes.c_uint),] )
  1496.  
  1497. mblen = _rpythonic_function_(       "mblen", ctypes.c_int, [
  1498.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1499.     ("__n",     ctypes.c_uint),] )
  1500.  
  1501. mbtowc = _rpythonic_function_(      "mbtowc", ctypes.c_int, [
  1502.     ("__pwc",       ctypes.POINTER(ctypes.c_int)),
  1503.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1504.     ("__n",     ctypes.c_uint),] )
  1505.  
  1506. wctomb = _rpythonic_function_(      "wctomb", ctypes.c_int, [
  1507.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1508.     ("__wchar",     ctypes.c_int),] )
  1509.  
  1510. mbstowcs = _rpythonic_function_(        "mbstowcs", ctypes.c_uint, [
  1511.     ("__pwcs",      ctypes.POINTER(ctypes.c_int)),
  1512.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1513.     ("__n",     ctypes.c_uint),] )
  1514.  
  1515. wcstombs = _rpythonic_function_(        "wcstombs", ctypes.c_uint, [
  1516.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  1517.     ("__pwcs",      ctypes.POINTER(ctypes.c_int)),
  1518.     ("__n",     ctypes.c_uint),] )
  1519.  
  1520. rpmatch = _rpythonic_function_(     "rpmatch", ctypes.c_int, [
  1521.     ("__response",      ctypes.POINTER(ctypes.c_char)),] )
  1522.  
  1523. getsubopt = _rpythonic_function_(       "getsubopt", ctypes.c_int, [
  1524.     ("__optionp",       ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  1525.     ("__tokens",        ctypes.POINTER(ctypes.c_char)),
  1526.     ("__valuep",        ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),] )
  1527.  
  1528. getloadavg = _rpythonic_function_(      "getloadavg", ctypes.c_int, [
  1529.     ("__loadavg",       ctypes.c_double),
  1530.     ("__nelem",     ctypes.c_int),] )
  1531.  
  1532. acos = _rpythonic_function_(        "acos", ctypes.c_double, [
  1533.     ("__x",     ctypes.c_double),] )
  1534.  
  1535. asin = _rpythonic_function_(        "asin", ctypes.c_double, [
  1536.     ("__x",     ctypes.c_double),] )
  1537.  
  1538. atan = _rpythonic_function_(        "atan", ctypes.c_double, [
  1539.     ("__x",     ctypes.c_double),] )
  1540.  
  1541. atan2 = _rpythonic_function_(       "atan2", ctypes.c_double, [
  1542.     ("__y",     ctypes.c_double),
  1543.     ("__x",     ctypes.c_double),] )
  1544.  
  1545. cos = _rpythonic_function_(     "cos", ctypes.c_double, [
  1546.     ("__x",     ctypes.c_double),] )
  1547.  
  1548. sin = _rpythonic_function_(     "sin", ctypes.c_double, [
  1549.     ("__x",     ctypes.c_double),] )
  1550.  
  1551. tan = _rpythonic_function_(     "tan", ctypes.c_double, [
  1552.     ("__x",     ctypes.c_double),] )
  1553.  
  1554. cosh = _rpythonic_function_(        "cosh", ctypes.c_double, [
  1555.     ("__x",     ctypes.c_double),] )
  1556.  
  1557. sinh = _rpythonic_function_(        "sinh", ctypes.c_double, [
  1558.     ("__x",     ctypes.c_double),] )
  1559.  
  1560. tanh = _rpythonic_function_(        "tanh", ctypes.c_double, [
  1561.     ("__x",     ctypes.c_double),] )
  1562.  
  1563. acosh = _rpythonic_function_(       "acosh", ctypes.c_double, [
  1564.     ("__x",     ctypes.c_double),] )
  1565.  
  1566. asinh = _rpythonic_function_(       "asinh", ctypes.c_double, [
  1567.     ("__x",     ctypes.c_double),] )
  1568.  
  1569. atanh = _rpythonic_function_(       "atanh", ctypes.c_double, [
  1570.     ("__x",     ctypes.c_double),] )
  1571.  
  1572. exp = _rpythonic_function_(     "exp", ctypes.c_double, [
  1573.     ("__x",     ctypes.c_double),] )
  1574.  
  1575. frexp = _rpythonic_function_(       "frexp", ctypes.c_double, [
  1576.     ("__x",     ctypes.c_double),
  1577.     ("__exponent",      ctypes.POINTER(ctypes.c_int)),] )
  1578.  
  1579. ldexp = _rpythonic_function_(       "ldexp", ctypes.c_double, [
  1580.     ("__x",     ctypes.c_double),
  1581.     ("__exponent",      ctypes.c_int),] )
  1582.  
  1583. log = _rpythonic_function_(     "log", ctypes.c_double, [
  1584.     ("__x",     ctypes.c_double),] )
  1585.  
  1586. log10 = _rpythonic_function_(       "log10", ctypes.c_double, [
  1587.     ("__x",     ctypes.c_double),] )
  1588.  
  1589. modf = _rpythonic_function_(        "modf", ctypes.c_double, [
  1590.     ("__x",     ctypes.c_double),
  1591.     ("__iptr",      ctypes.POINTER(ctypes.c_double)),] )
  1592.  
  1593. expm1 = _rpythonic_function_(       "expm1", ctypes.c_double, [
  1594.     ("__x",     ctypes.c_double),] )
  1595.  
  1596. log1p = _rpythonic_function_(       "log1p", ctypes.c_double, [
  1597.     ("__x",     ctypes.c_double),] )
  1598.  
  1599. logb = _rpythonic_function_(        "logb", ctypes.c_double, [
  1600.     ("__x",     ctypes.c_double),] )
  1601.  
  1602. exp2 = _rpythonic_function_(        "exp2", ctypes.c_double, [
  1603.     ("__x",     ctypes.c_double),] )
  1604.  
  1605. log2 = _rpythonic_function_(        "log2", ctypes.c_double, [
  1606.     ("__x",     ctypes.c_double),] )
  1607.  
  1608. pow = _rpythonic_function_(     "pow", ctypes.c_double, [
  1609.     ("__x",     ctypes.c_double),
  1610.     ("__y",     ctypes.c_double),] )
  1611.  
  1612. sqrt = _rpythonic_function_(        "sqrt", ctypes.c_double, [
  1613.     ("__x",     ctypes.c_double),] )
  1614.  
  1615. hypot = _rpythonic_function_(       "hypot", ctypes.c_double, [
  1616.     ("__x",     ctypes.c_double),
  1617.     ("__y",     ctypes.c_double),] )
  1618.  
  1619. cbrt = _rpythonic_function_(        "cbrt", ctypes.c_double, [
  1620.     ("__x",     ctypes.c_double),] )
  1621.  
  1622. ceil = _rpythonic_function_(        "ceil", ctypes.c_double, [
  1623.     ("__x",     ctypes.c_double),] )
  1624.  
  1625. fabs = _rpythonic_function_(        "fabs", ctypes.c_double, [
  1626.     ("__x",     ctypes.c_double),] )
  1627.  
  1628. floor = _rpythonic_function_(       "floor", ctypes.c_double, [
  1629.     ("__x",     ctypes.c_double),] )
  1630.  
  1631. fmod = _rpythonic_function_(        "fmod", ctypes.c_double, [
  1632.     ("__x",     ctypes.c_double),
  1633.     ("__y",     ctypes.c_double),] )
  1634.  
  1635. isinf = _rpythonic_function_(       "isinf", ctypes.c_int, [
  1636.     ("__value",     ctypes.c_double),] )
  1637.  
  1638. finite = _rpythonic_function_(      "finite", ctypes.c_int, [
  1639.     ("__value",     ctypes.c_double),] )
  1640.  
  1641. drem = _rpythonic_function_(        "drem", ctypes.c_double, [
  1642.     ("__x",     ctypes.c_double),
  1643.     ("__y",     ctypes.c_double),] )
  1644.  
  1645. significand = _rpythonic_function_(     "significand", ctypes.c_double, [
  1646.     ("__x",     ctypes.c_double),] )
  1647.  
  1648. copysign = _rpythonic_function_(        "copysign", ctypes.c_double, [
  1649.     ("__x",     ctypes.c_double),
  1650.     ("__y",     ctypes.c_double),] )
  1651.  
  1652. nan = _rpythonic_function_(     "nan", ctypes.c_double, [
  1653.     ("__tagb",      ctypes.POINTER(ctypes.c_char)),] )
  1654.  
  1655. isnan = _rpythonic_function_(       "isnan", ctypes.c_int, [
  1656.     ("__value",     ctypes.c_double),] )
  1657.  
  1658. j0 = _rpythonic_function_(      "j0", ctypes.c_double, [
  1659.     ("none",        ctypes.c_double),] )
  1660.  
  1661. j1 = _rpythonic_function_(      "j1", ctypes.c_double, [
  1662.     ("none",        ctypes.c_double),] )
  1663.  
  1664. jn = _rpythonic_function_(      "jn", ctypes.c_double, [
  1665.     ("none",        ctypes.c_int),
  1666.     ("none",        ctypes.c_double),] )
  1667.  
  1668. y0 = _rpythonic_function_(      "y0", ctypes.c_double, [
  1669.     ("none",        ctypes.c_double),] )
  1670.  
  1671. y1 = _rpythonic_function_(      "y1", ctypes.c_double, [
  1672.     ("none",        ctypes.c_double),] )
  1673.  
  1674. yn = _rpythonic_function_(      "yn", ctypes.c_double, [
  1675.     ("none",        ctypes.c_int),
  1676.     ("none",        ctypes.c_double),] )
  1677.  
  1678. erf = _rpythonic_function_(     "erf", ctypes.c_double, [
  1679.     ("none",        ctypes.c_double),] )
  1680.  
  1681. erfc = _rpythonic_function_(        "erfc", ctypes.c_double, [
  1682.     ("none",        ctypes.c_double),] )
  1683.  
  1684. lgamma = _rpythonic_function_(      "lgamma", ctypes.c_double, [
  1685.     ("none",        ctypes.c_double),] )
  1686.  
  1687. tgamma = _rpythonic_function_(      "tgamma", ctypes.c_double, [
  1688.     ("none",        ctypes.c_double),] )
  1689.  
  1690. gamma = _rpythonic_function_(       "gamma", ctypes.c_double, [
  1691.     ("none",        ctypes.c_double),] )
  1692.  
  1693. lgamma_r = _rpythonic_function_(        "lgamma_r", ctypes.c_double, [
  1694.     ("none",        ctypes.c_double),
  1695.     ("__signgamp",      ctypes.POINTER(ctypes.c_int)),] )
  1696.  
  1697. rint = _rpythonic_function_(        "rint", ctypes.c_double, [
  1698.     ("__x",     ctypes.c_double),] )
  1699.  
  1700. nextafter = _rpythonic_function_(       "nextafter", ctypes.c_double, [
  1701.     ("__x",     ctypes.c_double),
  1702.     ("__y",     ctypes.c_double),] )
  1703.  
  1704. nexttoward = _rpythonic_function_(      "nexttoward", ctypes.c_double, [
  1705.     ("__x",     ctypes.c_double),
  1706.     ("__y",     ctypes.c_longdouble),] )
  1707.  
  1708. remainder = _rpythonic_function_(       "remainder", ctypes.c_double, [
  1709.     ("__x",     ctypes.c_double),
  1710.     ("__y",     ctypes.c_double),] )
  1711.  
  1712. scalbn = _rpythonic_function_(      "scalbn", ctypes.c_double, [
  1713.     ("__x",     ctypes.c_double),
  1714.     ("__n",     ctypes.c_int),] )
  1715.  
  1716. ilogb = _rpythonic_function_(       "ilogb", ctypes.c_int, [
  1717.     ("__x",     ctypes.c_double),] )
  1718.  
  1719. scalbln = _rpythonic_function_(     "scalbln", ctypes.c_double, [
  1720.     ("__x",     ctypes.c_double),
  1721.     ("__n",     ctypes.c_int64),] )
  1722.  
  1723. nearbyint = _rpythonic_function_(       "nearbyint", ctypes.c_double, [
  1724.     ("__x",     ctypes.c_double),] )
  1725.  
  1726. round = _rpythonic_function_(       "round", ctypes.c_double, [
  1727.     ("__x",     ctypes.c_double),] )
  1728.  
  1729. trunc = _rpythonic_function_(       "trunc", ctypes.c_double, [
  1730.     ("__x",     ctypes.c_double),] )
  1731.  
  1732. remquo = _rpythonic_function_(      "remquo", ctypes.c_double, [
  1733.     ("__x",     ctypes.c_double),
  1734.     ("__y",     ctypes.c_double),
  1735.     ("__quo",       ctypes.POINTER(ctypes.c_int)),] )
  1736.  
  1737. lrint = _rpythonic_function_(       "lrint", ctypes.c_int64, [
  1738.     ("__x",     ctypes.c_double),] )
  1739.  
  1740. llrint = _rpythonic_function_(      "llrint", ctypes.c_longlong, [
  1741.     ("__x",     ctypes.c_double),] )
  1742.  
  1743. lround = _rpythonic_function_(      "lround", ctypes.c_int64, [
  1744.     ("__x",     ctypes.c_double),] )
  1745.  
  1746. llround = _rpythonic_function_(     "llround", ctypes.c_longlong, [
  1747.     ("__x",     ctypes.c_double),] )
  1748.  
  1749. fdim = _rpythonic_function_(        "fdim", ctypes.c_double, [
  1750.     ("__x",     ctypes.c_double),
  1751.     ("__y",     ctypes.c_double),] )
  1752.  
  1753. fmax = _rpythonic_function_(        "fmax", ctypes.c_double, [
  1754.     ("__x",     ctypes.c_double),
  1755.     ("__y",     ctypes.c_double),] )
  1756.  
  1757. fmin = _rpythonic_function_(        "fmin", ctypes.c_double, [
  1758.     ("__x",     ctypes.c_double),
  1759.     ("__y",     ctypes.c_double),] )
  1760.  
  1761. fma = _rpythonic_function_(     "fma", ctypes.c_double, [
  1762.     ("__x",     ctypes.c_double),
  1763.     ("__y",     ctypes.c_double),
  1764.     ("__z",     ctypes.c_double),] )
  1765.  
  1766. scalb = _rpythonic_function_(       "scalb", ctypes.c_double, [
  1767.     ("__x",     ctypes.c_double),
  1768.     ("__n",     ctypes.c_double),] )
  1769.  
  1770. acosf = _rpythonic_function_(       "acosf", ctypes.c_float, [
  1771.     ("__x",     ctypes.c_float),] )
  1772.  
  1773. asinf = _rpythonic_function_(       "asinf", ctypes.c_float, [
  1774.     ("__x",     ctypes.c_float),] )
  1775.  
  1776. atanf = _rpythonic_function_(       "atanf", ctypes.c_float, [
  1777.     ("__x",     ctypes.c_float),] )
  1778.  
  1779. atan2f = _rpythonic_function_(      "atan2f", ctypes.c_float, [
  1780.     ("__y",     ctypes.c_float),
  1781.     ("__x",     ctypes.c_float),] )
  1782.  
  1783. cosf = _rpythonic_function_(        "cosf", ctypes.c_float, [
  1784.     ("__x",     ctypes.c_float),] )
  1785.  
  1786. sinf = _rpythonic_function_(        "sinf", ctypes.c_float, [
  1787.     ("__x",     ctypes.c_float),] )
  1788.  
  1789. tanf = _rpythonic_function_(        "tanf", ctypes.c_float, [
  1790.     ("__x",     ctypes.c_float),] )
  1791.  
  1792. coshf = _rpythonic_function_(       "coshf", ctypes.c_float, [
  1793.     ("__x",     ctypes.c_float),] )
  1794.  
  1795. sinhf = _rpythonic_function_(       "sinhf", ctypes.c_float, [
  1796.     ("__x",     ctypes.c_float),] )
  1797.  
  1798. tanhf = _rpythonic_function_(       "tanhf", ctypes.c_float, [
  1799.     ("__x",     ctypes.c_float),] )
  1800.  
  1801. acoshf = _rpythonic_function_(      "acoshf", ctypes.c_float, [
  1802.     ("__x",     ctypes.c_float),] )
  1803.  
  1804. asinhf = _rpythonic_function_(      "asinhf", ctypes.c_float, [
  1805.     ("__x",     ctypes.c_float),] )
  1806.  
  1807. atanhf = _rpythonic_function_(      "atanhf", ctypes.c_float, [
  1808.     ("__x",     ctypes.c_float),] )
  1809.  
  1810. expf = _rpythonic_function_(        "expf", ctypes.c_float, [
  1811.     ("__x",     ctypes.c_float),] )
  1812.  
  1813. frexpf = _rpythonic_function_(      "frexpf", ctypes.c_float, [
  1814.     ("__x",     ctypes.c_float),
  1815.     ("__exponent",      ctypes.POINTER(ctypes.c_int)),] )
  1816.  
  1817. ldexpf = _rpythonic_function_(      "ldexpf", ctypes.c_float, [
  1818.     ("__x",     ctypes.c_float),
  1819.     ("__exponent",      ctypes.c_int),] )
  1820.  
  1821. logf = _rpythonic_function_(        "logf", ctypes.c_float, [
  1822.     ("__x",     ctypes.c_float),] )
  1823.  
  1824. log10f = _rpythonic_function_(      "log10f", ctypes.c_float, [
  1825.     ("__x",     ctypes.c_float),] )
  1826.  
  1827. modff = _rpythonic_function_(       "modff", ctypes.c_float, [
  1828.     ("__x",     ctypes.c_float),
  1829.     ("__iptr",      ctypes.POINTER(ctypes.c_float)),] )
  1830.  
  1831. expm1f = _rpythonic_function_(      "expm1f", ctypes.c_float, [
  1832.     ("__x",     ctypes.c_float),] )
  1833.  
  1834. log1pf = _rpythonic_function_(      "log1pf", ctypes.c_float, [
  1835.     ("__x",     ctypes.c_float),] )
  1836.  
  1837. logbf = _rpythonic_function_(       "logbf", ctypes.c_float, [
  1838.     ("__x",     ctypes.c_float),] )
  1839.  
  1840. exp2f = _rpythonic_function_(       "exp2f", ctypes.c_float, [
  1841.     ("__x",     ctypes.c_float),] )
  1842.  
  1843. log2f = _rpythonic_function_(       "log2f", ctypes.c_float, [
  1844.     ("__x",     ctypes.c_float),] )
  1845.  
  1846. powf = _rpythonic_function_(        "powf", ctypes.c_float, [
  1847.     ("__x",     ctypes.c_float),
  1848.     ("__y",     ctypes.c_float),] )
  1849.  
  1850. sqrtf = _rpythonic_function_(       "sqrtf", ctypes.c_float, [
  1851.     ("__x",     ctypes.c_float),] )
  1852.  
  1853. hypotf = _rpythonic_function_(      "hypotf", ctypes.c_float, [
  1854.     ("__x",     ctypes.c_float),
  1855.     ("__y",     ctypes.c_float),] )
  1856.  
  1857. cbrtf = _rpythonic_function_(       "cbrtf", ctypes.c_float, [
  1858.     ("__x",     ctypes.c_float),] )
  1859.  
  1860. ceilf = _rpythonic_function_(       "ceilf", ctypes.c_float, [
  1861.     ("__x",     ctypes.c_float),] )
  1862.  
  1863. fabsf = _rpythonic_function_(       "fabsf", ctypes.c_float, [
  1864.     ("__x",     ctypes.c_float),] )
  1865.  
  1866. floorf = _rpythonic_function_(      "floorf", ctypes.c_float, [
  1867.     ("__x",     ctypes.c_float),] )
  1868.  
  1869. fmodf = _rpythonic_function_(       "fmodf", ctypes.c_float, [
  1870.     ("__x",     ctypes.c_float),
  1871.     ("__y",     ctypes.c_float),] )
  1872.  
  1873. isinff = _rpythonic_function_(      "isinff", ctypes.c_int, [
  1874.     ("__value",     ctypes.c_float),] )
  1875.  
  1876. finitef = _rpythonic_function_(     "finitef", ctypes.c_int, [
  1877.     ("__value",     ctypes.c_float),] )
  1878.  
  1879. dremf = _rpythonic_function_(       "dremf", ctypes.c_float, [
  1880.     ("__x",     ctypes.c_float),
  1881.     ("__y",     ctypes.c_float),] )
  1882.  
  1883. significandf = _rpythonic_function_(        "significandf", ctypes.c_float, [
  1884.     ("__x",     ctypes.c_float),] )
  1885.  
  1886. copysignf = _rpythonic_function_(       "copysignf", ctypes.c_float, [
  1887.     ("__x",     ctypes.c_float),
  1888.     ("__y",     ctypes.c_float),] )
  1889.  
  1890. nanf = _rpythonic_function_(        "nanf", ctypes.c_float, [
  1891.     ("__tagb",      ctypes.POINTER(ctypes.c_char)),] )
  1892.  
  1893. isnanf = _rpythonic_function_(      "isnanf", ctypes.c_int, [
  1894.     ("__value",     ctypes.c_float),] )
  1895.  
  1896. j0f = _rpythonic_function_(     "j0f", ctypes.c_float, [
  1897.     ("none",        ctypes.c_float),] )
  1898.  
  1899. j1f = _rpythonic_function_(     "j1f", ctypes.c_float, [
  1900.     ("none",        ctypes.c_float),] )
  1901.  
  1902. jnf = _rpythonic_function_(     "jnf", ctypes.c_float, [
  1903.     ("none",        ctypes.c_int),
  1904.     ("none",        ctypes.c_float),] )
  1905.  
  1906. y0f = _rpythonic_function_(     "y0f", ctypes.c_float, [
  1907.     ("none",        ctypes.c_float),] )
  1908.  
  1909. y1f = _rpythonic_function_(     "y1f", ctypes.c_float, [
  1910.     ("none",        ctypes.c_float),] )
  1911.  
  1912. ynf = _rpythonic_function_(     "ynf", ctypes.c_float, [
  1913.     ("none",        ctypes.c_int),
  1914.     ("none",        ctypes.c_float),] )
  1915.  
  1916. erff = _rpythonic_function_(        "erff", ctypes.c_float, [
  1917.     ("none",        ctypes.c_float),] )
  1918.  
  1919. erfcf = _rpythonic_function_(       "erfcf", ctypes.c_float, [
  1920.     ("none",        ctypes.c_float),] )
  1921.  
  1922. lgammaf = _rpythonic_function_(     "lgammaf", ctypes.c_float, [
  1923.     ("none",        ctypes.c_float),] )
  1924.  
  1925. tgammaf = _rpythonic_function_(     "tgammaf", ctypes.c_float, [
  1926.     ("none",        ctypes.c_float),] )
  1927.  
  1928. gammaf = _rpythonic_function_(      "gammaf", ctypes.c_float, [
  1929.     ("none",        ctypes.c_float),] )
  1930.  
  1931. lgammaf_r = _rpythonic_function_(       "lgammaf_r", ctypes.c_float, [
  1932.     ("none",        ctypes.c_float),
  1933.     ("__signgamp",      ctypes.POINTER(ctypes.c_int)),] )
  1934.  
  1935. rintf = _rpythonic_function_(       "rintf", ctypes.c_float, [
  1936.     ("__x",     ctypes.c_float),] )
  1937.  
  1938. nextafterf = _rpythonic_function_(      "nextafterf", ctypes.c_float, [
  1939.     ("__x",     ctypes.c_float),
  1940.     ("__y",     ctypes.c_float),] )
  1941.  
  1942. nexttowardf = _rpythonic_function_(     "nexttowardf", ctypes.c_float, [
  1943.     ("__x",     ctypes.c_float),
  1944.     ("__y",     ctypes.c_longdouble),] )
  1945.  
  1946. remainderf = _rpythonic_function_(      "remainderf", ctypes.c_float, [
  1947.     ("__x",     ctypes.c_float),
  1948.     ("__y",     ctypes.c_float),] )
  1949.  
  1950. scalbnf = _rpythonic_function_(     "scalbnf", ctypes.c_float, [
  1951.     ("__x",     ctypes.c_float),
  1952.     ("__n",     ctypes.c_int),] )
  1953.  
  1954. ilogbf = _rpythonic_function_(      "ilogbf", ctypes.c_int, [
  1955.     ("__x",     ctypes.c_float),] )
  1956.  
  1957. scalblnf = _rpythonic_function_(        "scalblnf", ctypes.c_float, [
  1958.     ("__x",     ctypes.c_float),
  1959.     ("__n",     ctypes.c_int64),] )
  1960.  
  1961. nearbyintf = _rpythonic_function_(      "nearbyintf", ctypes.c_float, [
  1962.     ("__x",     ctypes.c_float),] )
  1963.  
  1964. roundf = _rpythonic_function_(      "roundf", ctypes.c_float, [
  1965.     ("__x",     ctypes.c_float),] )
  1966.  
  1967. truncf = _rpythonic_function_(      "truncf", ctypes.c_float, [
  1968.     ("__x",     ctypes.c_float),] )
  1969.  
  1970. remquof = _rpythonic_function_(     "remquof", ctypes.c_float, [
  1971.     ("__x",     ctypes.c_float),
  1972.     ("__y",     ctypes.c_float),
  1973.     ("__quo",       ctypes.POINTER(ctypes.c_int)),] )
  1974.  
  1975. lrintf = _rpythonic_function_(      "lrintf", ctypes.c_int64, [
  1976.     ("__x",     ctypes.c_float),] )
  1977.  
  1978. llrintf = _rpythonic_function_(     "llrintf", ctypes.c_longlong, [
  1979.     ("__x",     ctypes.c_float),] )
  1980.  
  1981. lroundf = _rpythonic_function_(     "lroundf", ctypes.c_int64, [
  1982.     ("__x",     ctypes.c_float),] )
  1983.  
  1984. llroundf = _rpythonic_function_(        "llroundf", ctypes.c_longlong, [
  1985.     ("__x",     ctypes.c_float),] )
  1986.  
  1987. fdimf = _rpythonic_function_(       "fdimf", ctypes.c_float, [
  1988.     ("__x",     ctypes.c_float),
  1989.     ("__y",     ctypes.c_float),] )
  1990.  
  1991. fmaxf = _rpythonic_function_(       "fmaxf", ctypes.c_float, [
  1992.     ("__x",     ctypes.c_float),
  1993.     ("__y",     ctypes.c_float),] )
  1994.  
  1995. fminf = _rpythonic_function_(       "fminf", ctypes.c_float, [
  1996.     ("__x",     ctypes.c_float),
  1997.     ("__y",     ctypes.c_float),] )
  1998.  
  1999. fmaf = _rpythonic_function_(        "fmaf", ctypes.c_float, [
  2000.     ("__x",     ctypes.c_float),
  2001.     ("__y",     ctypes.c_float),
  2002.     ("__z",     ctypes.c_float),] )
  2003.  
  2004. scalbf = _rpythonic_function_(      "scalbf", ctypes.c_float, [
  2005.     ("__x",     ctypes.c_float),
  2006.     ("__n",     ctypes.c_float),] )
  2007.  
  2008. acosl = _rpythonic_function_(       "acosl", ctypes.c_longdouble, [
  2009.     ("__x",     ctypes.c_longdouble),] )
  2010.  
  2011. asinl = _rpythonic_function_(       "asinl", ctypes.c_longdouble, [
  2012.     ("__x",     ctypes.c_longdouble),] )
  2013.  
  2014. atanl = _rpythonic_function_(       "atanl", ctypes.c_longdouble, [
  2015.     ("__x",     ctypes.c_longdouble),] )
  2016.  
  2017. atan2l = _rpythonic_function_(      "atan2l", ctypes.c_longdouble, [
  2018.     ("__y",     ctypes.c_longdouble),
  2019.     ("__x",     ctypes.c_longdouble),] )
  2020.  
  2021. cosl = _rpythonic_function_(        "cosl", ctypes.c_longdouble, [
  2022.     ("__x",     ctypes.c_longdouble),] )
  2023.  
  2024. sinl = _rpythonic_function_(        "sinl", ctypes.c_longdouble, [
  2025.     ("__x",     ctypes.c_longdouble),] )
  2026.  
  2027. tanl = _rpythonic_function_(        "tanl", ctypes.c_longdouble, [
  2028.     ("__x",     ctypes.c_longdouble),] )
  2029.  
  2030. coshl = _rpythonic_function_(       "coshl", ctypes.c_longdouble, [
  2031.     ("__x",     ctypes.c_longdouble),] )
  2032.  
  2033. sinhl = _rpythonic_function_(       "sinhl", ctypes.c_longdouble, [
  2034.     ("__x",     ctypes.c_longdouble),] )
  2035.  
  2036. tanhl = _rpythonic_function_(       "tanhl", ctypes.c_longdouble, [
  2037.     ("__x",     ctypes.c_longdouble),] )
  2038.  
  2039. acoshl = _rpythonic_function_(      "acoshl", ctypes.c_longdouble, [
  2040.     ("__x",     ctypes.c_longdouble),] )
  2041.  
  2042. asinhl = _rpythonic_function_(      "asinhl", ctypes.c_longdouble, [
  2043.     ("__x",     ctypes.c_longdouble),] )
  2044.  
  2045. atanhl = _rpythonic_function_(      "atanhl", ctypes.c_longdouble, [
  2046.     ("__x",     ctypes.c_longdouble),] )
  2047.  
  2048. expl = _rpythonic_function_(        "expl", ctypes.c_longdouble, [
  2049.     ("__x",     ctypes.c_longdouble),] )
  2050.  
  2051. frexpl = _rpythonic_function_(      "frexpl", ctypes.c_longdouble, [
  2052.     ("__x",     ctypes.c_longdouble),
  2053.     ("__exponent",      ctypes.POINTER(ctypes.c_int)),] )
  2054.  
  2055. ldexpl = _rpythonic_function_(      "ldexpl", ctypes.c_longdouble, [
  2056.     ("__x",     ctypes.c_longdouble),
  2057.     ("__exponent",      ctypes.c_int),] )
  2058.  
  2059. logl = _rpythonic_function_(        "logl", ctypes.c_longdouble, [
  2060.     ("__x",     ctypes.c_longdouble),] )
  2061.  
  2062. log10l = _rpythonic_function_(      "log10l", ctypes.c_longdouble, [
  2063.     ("__x",     ctypes.c_longdouble),] )
  2064.  
  2065. modfl = _rpythonic_function_(       "modfl", ctypes.c_longdouble, [
  2066.     ("__x",     ctypes.c_longdouble),
  2067.     ("__iptr",      ctypes.POINTER(ctypes.c_longdouble)),] )
  2068.  
  2069. expm1l = _rpythonic_function_(      "expm1l", ctypes.c_longdouble, [
  2070.     ("__x",     ctypes.c_longdouble),] )
  2071.  
  2072. log1pl = _rpythonic_function_(      "log1pl", ctypes.c_longdouble, [
  2073.     ("__x",     ctypes.c_longdouble),] )
  2074.  
  2075. logbl = _rpythonic_function_(       "logbl", ctypes.c_longdouble, [
  2076.     ("__x",     ctypes.c_longdouble),] )
  2077.  
  2078. exp2l = _rpythonic_function_(       "exp2l", ctypes.c_longdouble, [
  2079.     ("__x",     ctypes.c_longdouble),] )
  2080.  
  2081. log2l = _rpythonic_function_(       "log2l", ctypes.c_longdouble, [
  2082.     ("__x",     ctypes.c_longdouble),] )
  2083.  
  2084. powl = _rpythonic_function_(        "powl", ctypes.c_longdouble, [
  2085.     ("__x",     ctypes.c_longdouble),
  2086.     ("__y",     ctypes.c_longdouble),] )
  2087.  
  2088. sqrtl = _rpythonic_function_(       "sqrtl", ctypes.c_longdouble, [
  2089.     ("__x",     ctypes.c_longdouble),] )
  2090.  
  2091. hypotl = _rpythonic_function_(      "hypotl", ctypes.c_longdouble, [
  2092.     ("__x",     ctypes.c_longdouble),
  2093.     ("__y",     ctypes.c_longdouble),] )
  2094.  
  2095. cbrtl = _rpythonic_function_(       "cbrtl", ctypes.c_longdouble, [
  2096.     ("__x",     ctypes.c_longdouble),] )
  2097.  
  2098. ceill = _rpythonic_function_(       "ceill", ctypes.c_longdouble, [
  2099.     ("__x",     ctypes.c_longdouble),] )
  2100.  
  2101. fabsl = _rpythonic_function_(       "fabsl", ctypes.c_longdouble, [
  2102.     ("__x",     ctypes.c_longdouble),] )
  2103.  
  2104. floorl = _rpythonic_function_(      "floorl", ctypes.c_longdouble, [
  2105.     ("__x",     ctypes.c_longdouble),] )
  2106.  
  2107. fmodl = _rpythonic_function_(       "fmodl", ctypes.c_longdouble, [
  2108.     ("__x",     ctypes.c_longdouble),
  2109.     ("__y",     ctypes.c_longdouble),] )
  2110.  
  2111. isinfl = _rpythonic_function_(      "isinfl", ctypes.c_int, [
  2112.     ("__value",     ctypes.c_longdouble),] )
  2113.  
  2114. finitel = _rpythonic_function_(     "finitel", ctypes.c_int, [
  2115.     ("__value",     ctypes.c_longdouble),] )
  2116.  
  2117. dreml = _rpythonic_function_(       "dreml", ctypes.c_longdouble, [
  2118.     ("__x",     ctypes.c_longdouble),
  2119.     ("__y",     ctypes.c_longdouble),] )
  2120.  
  2121. significandl = _rpythonic_function_(        "significandl", ctypes.c_longdouble, [
  2122.     ("__x",     ctypes.c_longdouble),] )
  2123.  
  2124. copysignl = _rpythonic_function_(       "copysignl", ctypes.c_longdouble, [
  2125.     ("__x",     ctypes.c_longdouble),
  2126.     ("__y",     ctypes.c_longdouble),] )
  2127.  
  2128. nanl = _rpythonic_function_(        "nanl", ctypes.c_longdouble, [
  2129.     ("__tagb",      ctypes.POINTER(ctypes.c_char)),] )
  2130.  
  2131. isnanl = _rpythonic_function_(      "isnanl", ctypes.c_int, [
  2132.     ("__value",     ctypes.c_longdouble),] )
  2133.  
  2134. j0l = _rpythonic_function_(     "j0l", ctypes.c_longdouble, [
  2135.     ("none",        ctypes.c_longdouble),] )
  2136.  
  2137. j1l = _rpythonic_function_(     "j1l", ctypes.c_longdouble, [
  2138.     ("none",        ctypes.c_longdouble),] )
  2139.  
  2140. jnl = _rpythonic_function_(     "jnl", ctypes.c_longdouble, [
  2141.     ("none",        ctypes.c_int),
  2142.     ("none",        ctypes.c_longdouble),] )
  2143.  
  2144. y0l = _rpythonic_function_(     "y0l", ctypes.c_longdouble, [
  2145.     ("none",        ctypes.c_longdouble),] )
  2146.  
  2147. y1l = _rpythonic_function_(     "y1l", ctypes.c_longdouble, [
  2148.     ("none",        ctypes.c_longdouble),] )
  2149.  
  2150. ynl = _rpythonic_function_(     "ynl", ctypes.c_longdouble, [
  2151.     ("none",        ctypes.c_int),
  2152.     ("none",        ctypes.c_longdouble),] )
  2153.  
  2154. erfl = _rpythonic_function_(        "erfl", ctypes.c_longdouble, [
  2155.     ("none",        ctypes.c_longdouble),] )
  2156.  
  2157. erfcl = _rpythonic_function_(       "erfcl", ctypes.c_longdouble, [
  2158.     ("none",        ctypes.c_longdouble),] )
  2159.  
  2160. lgammal = _rpythonic_function_(     "lgammal", ctypes.c_longdouble, [
  2161.     ("none",        ctypes.c_longdouble),] )
  2162.  
  2163. tgammal = _rpythonic_function_(     "tgammal", ctypes.c_longdouble, [
  2164.     ("none",        ctypes.c_longdouble),] )
  2165.  
  2166. gammal = _rpythonic_function_(      "gammal", ctypes.c_longdouble, [
  2167.     ("none",        ctypes.c_longdouble),] )
  2168.  
  2169. lgammal_r = _rpythonic_function_(       "lgammal_r", ctypes.c_longdouble, [
  2170.     ("none",        ctypes.c_longdouble),
  2171.     ("__signgamp",      ctypes.POINTER(ctypes.c_int)),] )
  2172.  
  2173. rintl = _rpythonic_function_(       "rintl", ctypes.c_longdouble, [
  2174.     ("__x",     ctypes.c_longdouble),] )
  2175.  
  2176. nextafterl = _rpythonic_function_(      "nextafterl", ctypes.c_longdouble, [
  2177.     ("__x",     ctypes.c_longdouble),
  2178.     ("__y",     ctypes.c_longdouble),] )
  2179.  
  2180. nexttowardl = _rpythonic_function_(     "nexttowardl", ctypes.c_longdouble, [
  2181.     ("__x",     ctypes.c_longdouble),
  2182.     ("__y",     ctypes.c_longdouble),] )
  2183.  
  2184. remainderl = _rpythonic_function_(      "remainderl", ctypes.c_longdouble, [
  2185.     ("__x",     ctypes.c_longdouble),
  2186.     ("__y",     ctypes.c_longdouble),] )
  2187.  
  2188. scalbnl = _rpythonic_function_(     "scalbnl", ctypes.c_longdouble, [
  2189.     ("__x",     ctypes.c_longdouble),
  2190.     ("__n",     ctypes.c_int),] )
  2191.  
  2192. ilogbl = _rpythonic_function_(      "ilogbl", ctypes.c_int, [
  2193.     ("__x",     ctypes.c_longdouble),] )
  2194.  
  2195. scalblnl = _rpythonic_function_(        "scalblnl", ctypes.c_longdouble, [
  2196.     ("__x",     ctypes.c_longdouble),
  2197.     ("__n",     ctypes.c_int64),] )
  2198.  
  2199. nearbyintl = _rpythonic_function_(      "nearbyintl", ctypes.c_longdouble, [
  2200.     ("__x",     ctypes.c_longdouble),] )
  2201.  
  2202. roundl = _rpythonic_function_(      "roundl", ctypes.c_longdouble, [
  2203.     ("__x",     ctypes.c_longdouble),] )
  2204.  
  2205. truncl = _rpythonic_function_(      "truncl", ctypes.c_longdouble, [
  2206.     ("__x",     ctypes.c_longdouble),] )
  2207.  
  2208. remquol = _rpythonic_function_(     "remquol", ctypes.c_longdouble, [
  2209.     ("__x",     ctypes.c_longdouble),
  2210.     ("__y",     ctypes.c_longdouble),
  2211.     ("__quo",       ctypes.POINTER(ctypes.c_int)),] )
  2212.  
  2213. lrintl = _rpythonic_function_(      "lrintl", ctypes.c_int64, [
  2214.     ("__x",     ctypes.c_longdouble),] )
  2215.  
  2216. llrintl = _rpythonic_function_(     "llrintl", ctypes.c_longlong, [
  2217.     ("__x",     ctypes.c_longdouble),] )
  2218.  
  2219. lroundl = _rpythonic_function_(     "lroundl", ctypes.c_int64, [
  2220.     ("__x",     ctypes.c_longdouble),] )
  2221.  
  2222. llroundl = _rpythonic_function_(        "llroundl", ctypes.c_longlong, [
  2223.     ("__x",     ctypes.c_longdouble),] )
  2224.  
  2225. fdiml = _rpythonic_function_(       "fdiml", ctypes.c_longdouble, [
  2226.     ("__x",     ctypes.c_longdouble),
  2227.     ("__y",     ctypes.c_longdouble),] )
  2228.  
  2229. fmaxl = _rpythonic_function_(       "fmaxl", ctypes.c_longdouble, [
  2230.     ("__x",     ctypes.c_longdouble),
  2231.     ("__y",     ctypes.c_longdouble),] )
  2232.  
  2233. fminl = _rpythonic_function_(       "fminl", ctypes.c_longdouble, [
  2234.     ("__x",     ctypes.c_longdouble),
  2235.     ("__y",     ctypes.c_longdouble),] )
  2236.  
  2237. fmal = _rpythonic_function_(        "fmal", ctypes.c_longdouble, [
  2238.     ("__x",     ctypes.c_longdouble),
  2239.     ("__y",     ctypes.c_longdouble),
  2240.     ("__z",     ctypes.c_longdouble),] )
  2241.  
  2242. scalbl = _rpythonic_function_(      "scalbl", ctypes.c_longdouble, [
  2243.     ("__x",     ctypes.c_longdouble),
  2244.     ("__n",     ctypes.c_longdouble),] )
  2245.  
  2246. matherr = _rpythonic_function_(     "matherr", ctypes.c_int, [
  2247.     ("__exc",       ctypes.POINTER(exception)),] )
  2248.  
  2249. memcpy = _rpythonic_function_(      "memcpy", ctypes.POINTER(ctypes.c_void_p), [
  2250.     ("__dest",      ctypes.POINTER(ctypes.c_void_p)),
  2251.     ("__src",       ctypes.POINTER(ctypes.c_void_p)),
  2252.     ("__n",     ctypes.c_uint),] )
  2253.  
  2254. memmove = _rpythonic_function_(     "memmove", ctypes.POINTER(ctypes.c_void_p), [
  2255.     ("__dest",      ctypes.POINTER(ctypes.c_void_p)),
  2256.     ("__src",       ctypes.POINTER(ctypes.c_void_p)),
  2257.     ("__n",     ctypes.c_uint),] )
  2258.  
  2259. memccpy = _rpythonic_function_(     "memccpy", ctypes.POINTER(ctypes.c_void_p), [
  2260.     ("__dest",      ctypes.POINTER(ctypes.c_void_p)),
  2261.     ("__src",       ctypes.POINTER(ctypes.c_void_p)),
  2262.     ("__c",     ctypes.c_int),
  2263.     ("__n",     ctypes.c_uint),] )
  2264.  
  2265. memset = _rpythonic_function_(      "memset", ctypes.POINTER(ctypes.c_void_p), [
  2266.     ("__s",     ctypes.POINTER(ctypes.c_void_p)),
  2267.     ("__c",     ctypes.c_int),
  2268.     ("__n",     ctypes.c_uint),] )
  2269.  
  2270. memcmp = _rpythonic_function_(      "memcmp", ctypes.c_int, [
  2271.     ("__s1",        ctypes.POINTER(ctypes.c_void_p)),
  2272.     ("__s2",        ctypes.POINTER(ctypes.c_void_p)),
  2273.     ("__n",     ctypes.c_uint),] )
  2274.  
  2275. memchr = _rpythonic_function_(      "memchr", ctypes.POINTER(ctypes.c_void_p), [
  2276.     ("__s",     ctypes.POINTER(ctypes.c_void_p)),
  2277.     ("__c",     ctypes.c_int),
  2278.     ("__n",     ctypes.c_uint),] )
  2279.  
  2280. strcpy = _rpythonic_function_(      "strcpy", ctypes.POINTER(ctypes.c_char), [
  2281.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2282.     ("__src",       ctypes.POINTER(ctypes.c_char)),] )
  2283.  
  2284. strncpy = _rpythonic_function_(     "strncpy", ctypes.POINTER(ctypes.c_char), [
  2285.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2286.     ("__src",       ctypes.POINTER(ctypes.c_char)),
  2287.     ("__n",     ctypes.c_uint),] )
  2288.  
  2289. strcat = _rpythonic_function_(      "strcat", ctypes.POINTER(ctypes.c_char), [
  2290.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2291.     ("__src",       ctypes.POINTER(ctypes.c_char)),] )
  2292.  
  2293. strncat = _rpythonic_function_(     "strncat", ctypes.POINTER(ctypes.c_char), [
  2294.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2295.     ("__src",       ctypes.POINTER(ctypes.c_char)),
  2296.     ("__n",     ctypes.c_uint),] )
  2297.  
  2298. strcmp = _rpythonic_function_(      "strcmp", ctypes.c_int, [
  2299.     ("__s1",        ctypes.POINTER(ctypes.c_char)),
  2300.     ("__s2",        ctypes.POINTER(ctypes.c_char)),] )
  2301.  
  2302. strncmp = _rpythonic_function_(     "strncmp", ctypes.c_int, [
  2303.     ("__s1",        ctypes.POINTER(ctypes.c_char)),
  2304.     ("__s2",        ctypes.POINTER(ctypes.c_char)),
  2305.     ("__n",     ctypes.c_uint),] )
  2306.  
  2307. strcoll = _rpythonic_function_(     "strcoll", ctypes.c_int, [
  2308.     ("__s1",        ctypes.POINTER(ctypes.c_char)),
  2309.     ("__s2",        ctypes.POINTER(ctypes.c_char)),] )
  2310.  
  2311. strxfrm = _rpythonic_function_(     "strxfrm", ctypes.c_uint, [
  2312.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2313.     ("__src",       ctypes.POINTER(ctypes.c_char)),
  2314.     ("__n",     ctypes.c_uint),] )
  2315.  
  2316. strcoll_l = _rpythonic_function_(       "strcoll_l", ctypes.c_int, [
  2317.     ("__s1",        ctypes.POINTER(ctypes.c_char)),
  2318.     ("__s2",        ctypes.POINTER(ctypes.c_char)),
  2319.     ("__l",     ctypes.POINTER(__locale_struct)),] )
  2320.  
  2321. strxfrm_l = _rpythonic_function_(       "strxfrm_l", ctypes.c_uint, [
  2322.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2323.     ("__src",       ctypes.POINTER(ctypes.c_char)),
  2324.     ("__n",     ctypes.c_uint),
  2325.     ("__l",     ctypes.POINTER(__locale_struct)),] )
  2326.  
  2327. strdup = _rpythonic_function_(      "strdup", ctypes.POINTER(ctypes.c_char), [
  2328.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  2329.  
  2330. strndup = _rpythonic_function_(     "strndup", ctypes.POINTER(ctypes.c_char), [
  2331.     ("__string",        ctypes.POINTER(ctypes.c_char)),
  2332.     ("__n",     ctypes.c_uint),] )
  2333.  
  2334. strchr = _rpythonic_function_(      "strchr", ctypes.POINTER(ctypes.c_char), [
  2335.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2336.     ("__c",     ctypes.c_int),] )
  2337.  
  2338. strrchr = _rpythonic_function_(     "strrchr", ctypes.POINTER(ctypes.c_char), [
  2339.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2340.     ("__c",     ctypes.c_int),] )
  2341.  
  2342. strcspn = _rpythonic_function_(     "strcspn", ctypes.c_uint, [
  2343.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2344.     ("__reject",        ctypes.POINTER(ctypes.c_char)),] )
  2345.  
  2346. strspn = _rpythonic_function_(      "strspn", ctypes.c_uint, [
  2347.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2348.     ("__accept",        ctypes.POINTER(ctypes.c_char)),] )
  2349.  
  2350. strpbrk = _rpythonic_function_(     "strpbrk", ctypes.POINTER(ctypes.c_char), [
  2351.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2352.     ("__accept",        ctypes.POINTER(ctypes.c_char)),] )
  2353.  
  2354. strstr = _rpythonic_function_(      "strstr", ctypes.POINTER(ctypes.c_char), [
  2355.     ("__haystack",      ctypes.POINTER(ctypes.c_char)),
  2356.     ("__needle",        ctypes.POINTER(ctypes.c_char)),] )
  2357.  
  2358. strtok = _rpythonic_function_(      "strtok", ctypes.POINTER(ctypes.c_char), [
  2359.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2360.     ("__delim",     ctypes.POINTER(ctypes.c_char)),] )
  2361.  
  2362. strtok_r = _rpythonic_function_(        "strtok_r", ctypes.POINTER(ctypes.c_char), [
  2363.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2364.     ("__delim",     ctypes.POINTER(ctypes.c_char)),
  2365.     ("__save_ptr",      ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),] )
  2366.  
  2367. strlen = _rpythonic_function_(      "strlen", ctypes.c_uint, [
  2368.     ("__s",     ctypes.POINTER(ctypes.c_char)),] )
  2369.  
  2370. strnlen = _rpythonic_function_(     "strnlen", ctypes.c_uint, [
  2371.     ("__string",        ctypes.POINTER(ctypes.c_char)),
  2372.     ("__maxlen",        ctypes.c_uint),] )
  2373.  
  2374. strerror = _rpythonic_function_(        "strerror", ctypes.POINTER(ctypes.c_char), [
  2375.     ("__errnum",        ctypes.c_int),] )
  2376.  
  2377. strerror_r = _rpythonic_function_(      "strerror_r", ctypes.c_int, [
  2378.     ("__errnum",        ctypes.c_int),
  2379.     ("__buf",       ctypes.POINTER(ctypes.c_char)),
  2380.     ("__buflen",        ctypes.c_uint),] )
  2381.  
  2382. strerror_l = _rpythonic_function_(      "strerror_l", ctypes.POINTER(ctypes.c_char), [
  2383.     ("__errnum",        ctypes.c_int),
  2384.     ("__l",     ctypes.POINTER(__locale_struct)),] )
  2385.  
  2386. bcopy = _rpythonic_function_(       "bcopy", ctypes.c_void_p, [
  2387.     ("__src",       ctypes.POINTER(ctypes.c_void_p)),
  2388.     ("__dest",      ctypes.POINTER(ctypes.c_void_p)),
  2389.     ("__n",     ctypes.c_uint),] )
  2390.  
  2391. bzero = _rpythonic_function_(       "bzero", ctypes.c_void_p, [
  2392.     ("__s",     ctypes.POINTER(ctypes.c_void_p)),
  2393.     ("__n",     ctypes.c_uint),] )
  2394.  
  2395. bcmp = _rpythonic_function_(        "bcmp", ctypes.c_int, [
  2396.     ("__s1",        ctypes.POINTER(ctypes.c_void_p)),
  2397.     ("__s2",        ctypes.POINTER(ctypes.c_void_p)),
  2398.     ("__n",     ctypes.c_uint),] )
  2399.  
  2400. index = _rpythonic_function_(       "index", ctypes.POINTER(ctypes.c_char), [
  2401.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2402.     ("__c",     ctypes.c_int),] )
  2403.  
  2404. rindex = _rpythonic_function_(      "rindex", ctypes.POINTER(ctypes.c_char), [
  2405.     ("__s",     ctypes.POINTER(ctypes.c_char)),
  2406.     ("__c",     ctypes.c_int),] )
  2407.  
  2408. ffs = _rpythonic_function_(     "ffs", ctypes.c_int, [
  2409.     ("__i",     ctypes.c_int),] )
  2410.  
  2411. strcasecmp = _rpythonic_function_(      "strcasecmp", ctypes.c_int, [
  2412.     ("__s1",        ctypes.POINTER(ctypes.c_char)),
  2413.     ("__s2",        ctypes.POINTER(ctypes.c_char)),] )
  2414.  
  2415. strncasecmp = _rpythonic_function_(     "strncasecmp", ctypes.c_int, [
  2416.     ("__s1",        ctypes.POINTER(ctypes.c_char)),
  2417.     ("__s2",        ctypes.POINTER(ctypes.c_char)),
  2418.     ("__n",     ctypes.c_uint),] )
  2419.  
  2420. strsep = _rpythonic_function_(      "strsep", ctypes.POINTER(ctypes.c_char), [
  2421.     ("__stringp",       ctypes.POINTER(ctypes.POINTER(ctypes.c_char))),
  2422.     ("__delim",     ctypes.POINTER(ctypes.c_char)),] )
  2423.  
  2424. strsignal = _rpythonic_function_(       "strsignal", ctypes.POINTER(ctypes.c_char), [
  2425.     ("__sig",       ctypes.c_int),] )
  2426.  
  2427. stpcpy = _rpythonic_function_(      "stpcpy", ctypes.POINTER(ctypes.c_char), [
  2428.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2429.     ("__src",       ctypes.POINTER(ctypes.c_char)),] )
  2430.  
  2431. stpncpy = _rpythonic_function_(     "stpncpy", ctypes.POINTER(ctypes.c_char), [
  2432.     ("__dest",      ctypes.POINTER(ctypes.c_char)),
  2433.     ("__src",       ctypes.POINTER(ctypes.c_char)),
  2434.     ("__n",     ctypes.c_uint),] )
  2435.  
  2436. dMessageFunction = _rpythonic_function_(        "dMessageFunction", ctypes.c_void_p, [
  2437.     ("errnum",      ctypes.c_int),
  2438.     ("msg",     ctypes.POINTER(ctypes.c_char)),
  2439.     ("ap",      ctypes.c_char),] )
  2440.  
  2441. dSetErrorHandler = _rpythonic_function_(        "dSetErrorHandler", ctypes.c_void_p, [
  2442.     ("fn",      ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,)),] )
  2443.  
  2444. dSetDebugHandler = _rpythonic_function_(        "dSetDebugHandler", ctypes.c_void_p, [
  2445.     ("fn",      ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,)),] )
  2446.  
  2447. dSetMessageHandler = _rpythonic_function_(      "dSetMessageHandler", ctypes.c_void_p, [
  2448.     ("fn",      ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,)),] )
  2449.  
  2450. dGetErrorHandler = _rpythonic_function_(        "dGetErrorHandler", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,), [] )
  2451.  
  2452. dGetDebugHandler = _rpythonic_function_(        "dGetDebugHandler", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,), [] )
  2453.  
  2454. dGetMessageHandler = _rpythonic_function_(      "dGetMessageHandler", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.c_int,ctypes.POINTER(ctypes.c_char),ctypes.c_char,), [] )
  2455.  
  2456. dError = _rpythonic_function_(      "dError", ctypes.c_void_p, [
  2457.     ("num",     ctypes.c_int),
  2458.     ("msg",     ctypes.POINTER(ctypes.c_char)),] )
  2459.  
  2460. dDebug = _rpythonic_function_(      "dDebug", ctypes.c_void_p, [
  2461.     ("num",     ctypes.c_int),
  2462.     ("msg",     ctypes.POINTER(ctypes.c_char)),] )
  2463.  
  2464. dMessage = _rpythonic_function_(        "dMessage", ctypes.c_void_p, [
  2465.     ("num",     ctypes.c_int),
  2466.     ("msg",     ctypes.POINTER(ctypes.c_char)),] )
  2467.  
  2468. dGeomMoved = _rpythonic_function_(      "dGeomMoved", ctypes.c_void_p, [
  2469.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2470.  
  2471. dGeomGetBodyNext = _rpythonic_function_(        "dGeomGetBodyNext", ctypes.POINTER(ctypes.c_void_p), [
  2472.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2473.  
  2474. dGetConfiguration = _rpythonic_function_(       "dGetConfiguration", ctypes.POINTER(ctypes.c_char), [] )
  2475.  
  2476. dCheckConfiguration = _rpythonic_function_(     "dCheckConfiguration", ctypes.c_int, [
  2477.     ("token",       ctypes.POINTER(ctypes.c_char)),] )
  2478.  
  2479. dInitODE = _rpythonic_function_(        "dInitODE", ctypes.c_void_p, [] )
  2480.  
  2481. dInitODE2 = _rpythonic_function_(       "dInitODE2", ctypes.c_int, [
  2482.     ("uiInitFlags",     ctypes.c_uint),] )
  2483.  
  2484. dAllocateODEDataForThread = _rpythonic_function_(       "dAllocateODEDataForThread", ctypes.c_int, [
  2485.     ("uiAllocateFlags",     ctypes.c_uint),] )
  2486.  
  2487. dCleanupODEAllDataForThread = _rpythonic_function_(     "dCleanupODEAllDataForThread", ctypes.c_void_p, [] )
  2488.  
  2489. dCloseODE = _rpythonic_function_(       "dCloseODE", ctypes.c_void_p, [] )
  2490.  
  2491. dAllocFunction = _rpythonic_function_(      "dAllocFunction", ctypes.POINTER(ctypes.c_void_p), [
  2492.     ("size",        ctypes.c_uint),] )
  2493.  
  2494. dReallocFunction = _rpythonic_function_(        "dReallocFunction", ctypes.POINTER(ctypes.c_void_p), [
  2495.     ("ptr",     ctypes.POINTER(ctypes.c_void_p)),
  2496.     ("oldsize",     ctypes.c_uint),
  2497.     ("newsize",     ctypes.c_uint),] )
  2498.  
  2499. dFreeFunction = _rpythonic_function_(       "dFreeFunction", ctypes.c_void_p, [
  2500.     ("ptr",     ctypes.POINTER(ctypes.c_void_p)),
  2501.     ("size",        ctypes.c_uint),] )
  2502.  
  2503. dSetAllocHandler = _rpythonic_function_(        "dSetAllocHandler", ctypes.c_void_p, [
  2504.     ("fn",      ctypes.POINTER(ctypes.CFUNCTYPE(ctypes.POINTER(ctypes.c_void_p), ctypes.c_uint,))),] )
  2505.  
  2506. dSetReallocHandler = _rpythonic_function_(      "dSetReallocHandler", ctypes.c_void_p, [
  2507.     ("fn",      ctypes.POINTER(ctypes.CFUNCTYPE(ctypes.POINTER(ctypes.c_void_p), ctypes.POINTER(ctypes.c_void_p),ctypes.c_uint,ctypes.c_uint,))),] )
  2508.  
  2509. dSetFreeHandler = _rpythonic_function_(     "dSetFreeHandler", ctypes.c_void_p, [
  2510.     ("fn",      ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),ctypes.c_uint,)),] )
  2511.  
  2512. dGetAllocHandler = _rpythonic_function_(        "dGetAllocHandler", ctypes.POINTER(ctypes.CFUNCTYPE(ctypes.POINTER(ctypes.c_void_p), ctypes.c_uint,)), [] )
  2513.  
  2514. dGetReallocHandler = _rpythonic_function_(      "dGetReallocHandler", ctypes.POINTER(ctypes.CFUNCTYPE(ctypes.POINTER(ctypes.c_void_p), ctypes.POINTER(ctypes.c_void_p),ctypes.c_uint,ctypes.c_uint,)), [] )
  2515.  
  2516. dGetFreeHandler = _rpythonic_function_(     "dGetFreeHandler", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),ctypes.c_uint,), [] )
  2517.  
  2518. dAlloc = _rpythonic_function_(      "dAlloc", ctypes.POINTER(ctypes.c_void_p), [
  2519.     ("size",        ctypes.c_uint),] )
  2520.  
  2521. dRealloc = _rpythonic_function_(        "dRealloc", ctypes.POINTER(ctypes.c_void_p), [
  2522.     ("ptr",     ctypes.POINTER(ctypes.c_void_p)),
  2523.     ("oldsize",     ctypes.c_uint),
  2524.     ("newsize",     ctypes.c_uint),] )
  2525.  
  2526. dFree = _rpythonic_function_(       "dFree", ctypes.c_void_p, [
  2527.     ("ptr",     ctypes.POINTER(ctypes.c_void_p)),
  2528.     ("size",        ctypes.c_uint),] )
  2529.  
  2530. _dSafeNormalize3 = _rpythonic_function_(        "_dSafeNormalize3", ctypes.c_int, [
  2531.     ("a",       ( ctypes.c_double * 4 )),] )
  2532.  
  2533. _dSafeNormalize4 = _rpythonic_function_(        "_dSafeNormalize4", ctypes.c_int, [
  2534.     ("a",       ( ctypes.c_double * 4 )),] )
  2535.  
  2536. dSafeNormalize3 = _rpythonic_function_(     "dSafeNormalize3", ctypes.c_int, [
  2537.     ("a",       ( ctypes.c_double * 4 )),] )
  2538.  
  2539. dSafeNormalize4 = _rpythonic_function_(     "dSafeNormalize4", ctypes.c_int, [
  2540.     ("a",       ( ctypes.c_double * 4 )),] )
  2541.  
  2542. dNormalize3 = _rpythonic_function_(     "dNormalize3", ctypes.c_void_p, [
  2543.     ("a",       ( ctypes.c_double * 4 )),] )
  2544.  
  2545. dNormalize4 = _rpythonic_function_(     "dNormalize4", ctypes.c_void_p, [
  2546.     ("a",       ( ctypes.c_double * 4 )),] )
  2547.  
  2548. dPlaneSpace = _rpythonic_function_(     "dPlaneSpace", ctypes.c_void_p, [
  2549.     ("n",       ( ctypes.c_double * 4 )),
  2550.     ("p",       ( ctypes.c_double * 4 )),
  2551.     ("q",       ( ctypes.c_double * 4 )),] )
  2552.  
  2553. dOrthogonalizeR = _rpythonic_function_(     "dOrthogonalizeR", ctypes.c_void_p, [
  2554.     ("m",       ( ctypes.c_double * 12 )),] )
  2555.  
  2556. dSetZero = _rpythonic_function_(        "dSetZero", ctypes.c_void_p, [
  2557.     ("a",       ctypes.POINTER(ctypes.c_double)),
  2558.     ("n",       ctypes.c_int),] )
  2559.  
  2560. dSetValue = _rpythonic_function_(       "dSetValue", ctypes.c_void_p, [
  2561.     ("a",       ctypes.POINTER(ctypes.c_double)),
  2562.     ("n",       ctypes.c_int),
  2563.     ("value",       ctypes.c_double),] )
  2564.  
  2565. dDot = _rpythonic_function_(        "dDot", ctypes.c_double, [
  2566.     ("a",       ctypes.POINTER(ctypes.c_double)),
  2567.     ("b",       ctypes.POINTER(ctypes.c_double)),
  2568.     ("n",       ctypes.c_int),] )
  2569.  
  2570. dMultiply0 = _rpythonic_function_(      "dMultiply0", ctypes.c_void_p, [
  2571.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2572.     ("B",       ctypes.POINTER(ctypes.c_double)),
  2573.     ("C",       ctypes.POINTER(ctypes.c_double)),
  2574.     ("p",       ctypes.c_int),
  2575.     ("q",       ctypes.c_int),
  2576.     ("r",       ctypes.c_int),] )
  2577.  
  2578. dMultiply1 = _rpythonic_function_(      "dMultiply1", ctypes.c_void_p, [
  2579.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2580.     ("B",       ctypes.POINTER(ctypes.c_double)),
  2581.     ("C",       ctypes.POINTER(ctypes.c_double)),
  2582.     ("p",       ctypes.c_int),
  2583.     ("q",       ctypes.c_int),
  2584.     ("r",       ctypes.c_int),] )
  2585.  
  2586. dMultiply2 = _rpythonic_function_(      "dMultiply2", ctypes.c_void_p, [
  2587.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2588.     ("B",       ctypes.POINTER(ctypes.c_double)),
  2589.     ("C",       ctypes.POINTER(ctypes.c_double)),
  2590.     ("p",       ctypes.c_int),
  2591.     ("q",       ctypes.c_int),
  2592.     ("r",       ctypes.c_int),] )
  2593.  
  2594. dFactorCholesky = _rpythonic_function_(     "dFactorCholesky", ctypes.c_int, [
  2595.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2596.     ("n",       ctypes.c_int),] )
  2597.  
  2598. dSolveCholesky = _rpythonic_function_(      "dSolveCholesky", ctypes.c_void_p, [
  2599.     ("L",       ctypes.POINTER(ctypes.c_double)),
  2600.     ("b",       ctypes.POINTER(ctypes.c_double)),
  2601.     ("n",       ctypes.c_int),] )
  2602.  
  2603. dInvertPDMatrix = _rpythonic_function_(     "dInvertPDMatrix", ctypes.c_int, [
  2604.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2605.     ("Ainv",        ctypes.POINTER(ctypes.c_double)),
  2606.     ("n",       ctypes.c_int),] )
  2607.  
  2608. dIsPositiveDefinite = _rpythonic_function_(     "dIsPositiveDefinite", ctypes.c_int, [
  2609.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2610.     ("n",       ctypes.c_int),] )
  2611.  
  2612. dFactorLDLT = _rpythonic_function_(     "dFactorLDLT", ctypes.c_void_p, [
  2613.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2614.     ("d",       ctypes.POINTER(ctypes.c_double)),
  2615.     ("n",       ctypes.c_int),
  2616.     ("nskip",       ctypes.c_int),] )
  2617.  
  2618. dSolveL1 = _rpythonic_function_(        "dSolveL1", ctypes.c_void_p, [
  2619.     ("L",       ctypes.POINTER(ctypes.c_double)),
  2620.     ("b",       ctypes.POINTER(ctypes.c_double)),
  2621.     ("n",       ctypes.c_int),
  2622.     ("nskip",       ctypes.c_int),] )
  2623.  
  2624. dSolveL1T = _rpythonic_function_(       "dSolveL1T", ctypes.c_void_p, [
  2625.     ("L",       ctypes.POINTER(ctypes.c_double)),
  2626.     ("b",       ctypes.POINTER(ctypes.c_double)),
  2627.     ("n",       ctypes.c_int),
  2628.     ("nskip",       ctypes.c_int),] )
  2629.  
  2630. dVectorScale = _rpythonic_function_(        "dVectorScale", ctypes.c_void_p, [
  2631.     ("a",       ctypes.POINTER(ctypes.c_double)),
  2632.     ("d",       ctypes.POINTER(ctypes.c_double)),
  2633.     ("n",       ctypes.c_int),] )
  2634.  
  2635. dSolveLDLT = _rpythonic_function_(      "dSolveLDLT", ctypes.c_void_p, [
  2636.     ("L",       ctypes.POINTER(ctypes.c_double)),
  2637.     ("d",       ctypes.POINTER(ctypes.c_double)),
  2638.     ("b",       ctypes.POINTER(ctypes.c_double)),
  2639.     ("n",       ctypes.c_int),
  2640.     ("nskip",       ctypes.c_int),] )
  2641.  
  2642. dLDLTAddTL = _rpythonic_function_(      "dLDLTAddTL", ctypes.c_void_p, [
  2643.     ("L",       ctypes.POINTER(ctypes.c_double)),
  2644.     ("d",       ctypes.POINTER(ctypes.c_double)),
  2645.     ("a",       ctypes.POINTER(ctypes.c_double)),
  2646.     ("n",       ctypes.c_int),
  2647.     ("nskip",       ctypes.c_int),] )
  2648.  
  2649. dLDLTRemove = _rpythonic_function_(     "dLDLTRemove", ctypes.c_void_p, [
  2650.     ("A",       ctypes.POINTER(ctypes.POINTER(ctypes.c_double))),
  2651.     ("p",       ctypes.POINTER(ctypes.c_int)),
  2652.     ("L",       ctypes.POINTER(ctypes.c_double)),
  2653.     ("d",       ctypes.POINTER(ctypes.c_double)),
  2654.     ("n1",      ctypes.c_int),
  2655.     ("n2",      ctypes.c_int),
  2656.     ("r",       ctypes.c_int),
  2657.     ("nskip",       ctypes.c_int),] )
  2658.  
  2659. dRemoveRowCol = _rpythonic_function_(       "dRemoveRowCol", ctypes.c_void_p, [
  2660.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2661.     ("n",       ctypes.c_int),
  2662.     ("nskip",       ctypes.c_int),
  2663.     ("r",       ctypes.c_int),] )
  2664.  
  2665. dStopwatchReset = _rpythonic_function_(     "dStopwatchReset", ctypes.c_void_p, [
  2666.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2667.  
  2668. dStopwatchStart = _rpythonic_function_(     "dStopwatchStart", ctypes.c_void_p, [
  2669.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2670.  
  2671. dStopwatchStop = _rpythonic_function_(      "dStopwatchStop", ctypes.c_void_p, [
  2672.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2673.  
  2674. dStopwatchTime = _rpythonic_function_(      "dStopwatchTime", ctypes.c_double, [
  2675.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2676.  
  2677. dTimerStart = _rpythonic_function_(     "dTimerStart", ctypes.c_void_p, [
  2678.     ("description",     ctypes.POINTER(ctypes.c_char)),] )
  2679.  
  2680. dTimerNow = _rpythonic_function_(       "dTimerNow", ctypes.c_void_p, [
  2681.     ("description",     ctypes.POINTER(ctypes.c_char)),] )
  2682.  
  2683. dTimerEnd = _rpythonic_function_(       "dTimerEnd", ctypes.c_void_p, [] )
  2684.  
  2685. dTimerReport = _rpythonic_function_(        "dTimerReport", ctypes.c_void_p, [
  2686.     ("fout",        ctypes.POINTER(_IO_FILE)),
  2687.     ("average",     ctypes.c_int),] )
  2688.  
  2689. dTimerTicksPerSecond = _rpythonic_function_(        "dTimerTicksPerSecond", ctypes.c_double, [] )
  2690.  
  2691. dTimerResolution = _rpythonic_function_(        "dTimerResolution", ctypes.c_double, [] )
  2692.  
  2693. dRSetIdentity = _rpythonic_function_(       "dRSetIdentity", ctypes.c_void_p, [
  2694.     ("R",       ( ctypes.c_double * 12 )),] )
  2695.  
  2696. dRFromAxisAndAngle = _rpythonic_function_(      "dRFromAxisAndAngle", ctypes.c_void_p, [
  2697.     ("R",       ( ctypes.c_double * 12 )),
  2698.     ("ax",      ctypes.c_double),
  2699.     ("ay",      ctypes.c_double),
  2700.     ("az",      ctypes.c_double),
  2701.     ("angle",       ctypes.c_double),] )
  2702.  
  2703. dRFromEulerAngles = _rpythonic_function_(       "dRFromEulerAngles", ctypes.c_void_p, [
  2704.     ("R",       ( ctypes.c_double * 12 )),
  2705.     ("phi",     ctypes.c_double),
  2706.     ("theta",       ctypes.c_double),
  2707.     ("psi",     ctypes.c_double),] )
  2708.  
  2709. dRFrom2Axes = _rpythonic_function_(     "dRFrom2Axes", ctypes.c_void_p, [
  2710.     ("R",       ( ctypes.c_double * 12 )),
  2711.     ("ax",      ctypes.c_double),
  2712.     ("ay",      ctypes.c_double),
  2713.     ("az",      ctypes.c_double),
  2714.     ("bx",      ctypes.c_double),
  2715.     ("by",      ctypes.c_double),
  2716.     ("bz",      ctypes.c_double),] )
  2717.  
  2718. dRFromZAxis = _rpythonic_function_(     "dRFromZAxis", ctypes.c_void_p, [
  2719.     ("R",       ( ctypes.c_double * 12 )),
  2720.     ("ax",      ctypes.c_double),
  2721.     ("ay",      ctypes.c_double),
  2722.     ("az",      ctypes.c_double),] )
  2723.  
  2724. dQSetIdentity = _rpythonic_function_(       "dQSetIdentity", ctypes.c_void_p, [
  2725.     ("q",       ( ctypes.c_double * 4 )),] )
  2726.  
  2727. dQFromAxisAndAngle = _rpythonic_function_(      "dQFromAxisAndAngle", ctypes.c_void_p, [
  2728.     ("q",       ( ctypes.c_double * 4 )),
  2729.     ("ax",      ctypes.c_double),
  2730.     ("ay",      ctypes.c_double),
  2731.     ("az",      ctypes.c_double),
  2732.     ("angle",       ctypes.c_double),] )
  2733.  
  2734. dQMultiply0 = _rpythonic_function_(     "dQMultiply0", ctypes.c_void_p, [
  2735.     ("qa",      ( ctypes.c_double * 4 )),
  2736.     ("qb",      ( ctypes.c_double * 4 )),
  2737.     ("qc",      ( ctypes.c_double * 4 )),] )
  2738.  
  2739. dQMultiply1 = _rpythonic_function_(     "dQMultiply1", ctypes.c_void_p, [
  2740.     ("qa",      ( ctypes.c_double * 4 )),
  2741.     ("qb",      ( ctypes.c_double * 4 )),
  2742.     ("qc",      ( ctypes.c_double * 4 )),] )
  2743.  
  2744. dQMultiply2 = _rpythonic_function_(     "dQMultiply2", ctypes.c_void_p, [
  2745.     ("qa",      ( ctypes.c_double * 4 )),
  2746.     ("qb",      ( ctypes.c_double * 4 )),
  2747.     ("qc",      ( ctypes.c_double * 4 )),] )
  2748.  
  2749. dQMultiply3 = _rpythonic_function_(     "dQMultiply3", ctypes.c_void_p, [
  2750.     ("qa",      ( ctypes.c_double * 4 )),
  2751.     ("qb",      ( ctypes.c_double * 4 )),
  2752.     ("qc",      ( ctypes.c_double * 4 )),] )
  2753.  
  2754. dRfromQ = _rpythonic_function_(     "dRfromQ", ctypes.c_void_p, [
  2755.     ("R",       ( ctypes.c_double * 12 )),
  2756.     ("q",       ( ctypes.c_double * 4 )),] )
  2757.  
  2758. dQfromR = _rpythonic_function_(     "dQfromR", ctypes.c_void_p, [
  2759.     ("q",       ( ctypes.c_double * 4 )),
  2760.     ("R",       ( ctypes.c_double * 12 )),] )
  2761.  
  2762. dDQfromW = _rpythonic_function_(        "dDQfromW", ctypes.c_void_p, [
  2763.     ("dq",      ( ctypes.c_double * 4 )),
  2764.     ("w",       ( ctypes.c_double * 4 )),
  2765.     ("q",       ( ctypes.c_double * 4 )),] )
  2766.  
  2767. dMassCheck = _rpythonic_function_(      "dMassCheck", ctypes.c_int, [
  2768.     ("m",       ctypes.POINTER(dMass)),] )
  2769.  
  2770. dMassSetZero = _rpythonic_function_(        "dMassSetZero", ctypes.c_void_p, [
  2771.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2772.  
  2773. dMassSetParameters = _rpythonic_function_(      "dMassSetParameters", ctypes.c_void_p, [
  2774.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2775.     ("themass",     ctypes.c_double),
  2776.     ("cgx",     ctypes.c_double),
  2777.     ("cgy",     ctypes.c_double),
  2778.     ("cgz",     ctypes.c_double),
  2779.     ("I11",     ctypes.c_double),
  2780.     ("I22",     ctypes.c_double),
  2781.     ("I33",     ctypes.c_double),
  2782.     ("I12",     ctypes.c_double),
  2783.     ("I13",     ctypes.c_double),
  2784.     ("I23",     ctypes.c_double),] )
  2785.  
  2786. dMassSetSphere = _rpythonic_function_(      "dMassSetSphere", ctypes.c_void_p, [
  2787.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2788.     ("density",     ctypes.c_double),
  2789.     ("radius",      ctypes.c_double),] )
  2790.  
  2791. dMassSetSphereTotal = _rpythonic_function_(     "dMassSetSphereTotal", ctypes.c_void_p, [
  2792.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2793.     ("total_mass",      ctypes.c_double),
  2794.     ("radius",      ctypes.c_double),] )
  2795.  
  2796. dMassSetCapsule = _rpythonic_function_(     "dMassSetCapsule", ctypes.c_void_p, [
  2797.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2798.     ("density",     ctypes.c_double),
  2799.     ("direction",       ctypes.c_int),
  2800.     ("radius",      ctypes.c_double),
  2801.     ("length",      ctypes.c_double),] )
  2802.  
  2803. dMassSetCapsuleTotal = _rpythonic_function_(        "dMassSetCapsuleTotal", ctypes.c_void_p, [
  2804.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2805.     ("total_mass",      ctypes.c_double),
  2806.     ("direction",       ctypes.c_int),
  2807.     ("radius",      ctypes.c_double),
  2808.     ("length",      ctypes.c_double),] )
  2809.  
  2810. dMassSetCylinder = _rpythonic_function_(        "dMassSetCylinder", ctypes.c_void_p, [
  2811.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2812.     ("density",     ctypes.c_double),
  2813.     ("direction",       ctypes.c_int),
  2814.     ("radius",      ctypes.c_double),
  2815.     ("length",      ctypes.c_double),] )
  2816.  
  2817. dMassSetCylinderTotal = _rpythonic_function_(       "dMassSetCylinderTotal", ctypes.c_void_p, [
  2818.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2819.     ("total_mass",      ctypes.c_double),
  2820.     ("direction",       ctypes.c_int),
  2821.     ("radius",      ctypes.c_double),
  2822.     ("length",      ctypes.c_double),] )
  2823.  
  2824. dMassSetBox = _rpythonic_function_(     "dMassSetBox", ctypes.c_void_p, [
  2825.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2826.     ("density",     ctypes.c_double),
  2827.     ("lx",      ctypes.c_double),
  2828.     ("ly",      ctypes.c_double),
  2829.     ("lz",      ctypes.c_double),] )
  2830.  
  2831. dMassSetBoxTotal = _rpythonic_function_(        "dMassSetBoxTotal", ctypes.c_void_p, [
  2832.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2833.     ("total_mass",      ctypes.c_double),
  2834.     ("lx",      ctypes.c_double),
  2835.     ("ly",      ctypes.c_double),
  2836.     ("lz",      ctypes.c_double),] )
  2837.  
  2838. dMassSetTrimesh = _rpythonic_function_(     "dMassSetTrimesh", ctypes.c_void_p, [
  2839.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2840.     ("density",     ctypes.c_double),
  2841.     ("g",       ctypes.POINTER(dxGeom)),] )
  2842.  
  2843. dMassSetTrimeshTotal = _rpythonic_function_(        "dMassSetTrimeshTotal", ctypes.c_void_p, [
  2844.     ("m",       ctypes.POINTER(dMass)),
  2845.     ("total_mass",      ctypes.c_double),
  2846.     ("g",       ctypes.POINTER(dxGeom)),] )
  2847.  
  2848. dMassAdjust = _rpythonic_function_(     "dMassAdjust", ctypes.c_void_p, [
  2849.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2850.     ("newmass",     ctypes.c_double),] )
  2851.  
  2852. dMassTranslate = _rpythonic_function_(      "dMassTranslate", ctypes.c_void_p, [
  2853.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2854.     ("x",       ctypes.c_double),
  2855.     ("y",       ctypes.c_double),
  2856.     ("z",       ctypes.c_double),] )
  2857.  
  2858. dMassRotate = _rpythonic_function_(     "dMassRotate", ctypes.c_void_p, [
  2859.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2860.     ("R",       ( ctypes.c_double * 12 )),] )
  2861.  
  2862. dMassAdd = _rpythonic_function_(        "dMassAdd", ctypes.c_void_p, [
  2863.     ("a",       ctypes.POINTER(dMass)),
  2864.     ("b",       ctypes.POINTER(dMass)),] )
  2865.  
  2866. dMassSetCappedCylinder = _rpythonic_function_(      "dMassSetCappedCylinder", ctypes.c_void_p, [
  2867.     ("a",       ctypes.POINTER(dMass)),
  2868.     ("b",       ctypes.c_double),
  2869.     ("c",       ctypes.c_int),
  2870.     ("d",       ctypes.c_double),
  2871.     ("e",       ctypes.c_double),] )
  2872.  
  2873. dMassSetCappedCylinderTotal = _rpythonic_function_(     "dMassSetCappedCylinderTotal", ctypes.c_void_p, [
  2874.     ("a",       ctypes.POINTER(dMass)),
  2875.     ("b",       ctypes.c_double),
  2876.     ("c",       ctypes.c_int),
  2877.     ("d",       ctypes.c_double),
  2878.     ("e",       ctypes.c_double),] )
  2879.  
  2880. dTestRand = _rpythonic_function_(       "dTestRand", ctypes.c_int, [] )
  2881.  
  2882. dRand = _rpythonic_function_(       "dRand", ctypes.c_ulong, [] )
  2883.  
  2884. dRandGetSeed = _rpythonic_function_(        "dRandGetSeed", ctypes.c_ulong, [] )
  2885.  
  2886. dRandSetSeed = _rpythonic_function_(        "dRandSetSeed", ctypes.c_void_p, [
  2887.     ("s",       ctypes.c_ulong),] )
  2888.  
  2889. dRandInt = _rpythonic_function_(        "dRandInt", ctypes.c_int, [
  2890.     ("n",       ctypes.c_int),] )
  2891.  
  2892. dRandReal = _rpythonic_function_(       "dRandReal", ctypes.c_double, [] )
  2893.  
  2894. dPrintMatrix = _rpythonic_function_(        "dPrintMatrix", ctypes.c_void_p, [
  2895.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2896.     ("n",       ctypes.c_int),
  2897.     ("m",       ctypes.c_int),
  2898.     ("fmt",     ctypes.POINTER(ctypes.c_char)),
  2899.     ("f",       ctypes.POINTER(_IO_FILE)),] )
  2900.  
  2901. dMakeRandomVector = _rpythonic_function_(       "dMakeRandomVector", ctypes.c_void_p, [
  2902.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2903.     ("n",       ctypes.c_int),
  2904.     ("range",       ctypes.c_double),] )
  2905.  
  2906. dMakeRandomMatrix = _rpythonic_function_(       "dMakeRandomMatrix", ctypes.c_void_p, [
  2907.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2908.     ("n",       ctypes.c_int),
  2909.     ("m",       ctypes.c_int),
  2910.     ("range",       ctypes.c_double),] )
  2911.  
  2912. dClearUpperTriangle = _rpythonic_function_(     "dClearUpperTriangle", ctypes.c_void_p, [
  2913.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2914.     ("n",       ctypes.c_int),] )
  2915.  
  2916. dMaxDifference = _rpythonic_function_(      "dMaxDifference", ctypes.c_double, [
  2917.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2918.     ("B",       ctypes.POINTER(ctypes.c_double)),
  2919.     ("n",       ctypes.c_int),
  2920.     ("m",       ctypes.c_int),] )
  2921.  
  2922. dMaxDifferenceLowerTriangle = _rpythonic_function_(     "dMaxDifferenceLowerTriangle", ctypes.c_double, [
  2923.     ("A",       ctypes.POINTER(ctypes.c_double)),
  2924.     ("B",       ctypes.POINTER(ctypes.c_double)),
  2925.     ("n",       ctypes.c_int),] )
  2926.  
  2927. dWorldCreate = _rpythonic_function_(        "dWorldCreate", ctypes.POINTER(ctypes.c_void_p), [] )
  2928.  
  2929. dWorldDestroy = _rpythonic_function_(       "dWorldDestroy", ctypes.c_void_p, [
  2930.     ("world",       ctypes.POINTER(dxWorld)),] )
  2931.  
  2932. dWorldSetGravity = _rpythonic_function_(        "dWorldSetGravity", ctypes.c_void_p, [
  2933.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2934.     ("x",       ctypes.c_double),
  2935.     ("y",       ctypes.c_double),
  2936.     ("z",       ctypes.c_double),] )
  2937.  
  2938. dWorldGetGravity = _rpythonic_function_(        "dWorldGetGravity", ctypes.c_void_p, [
  2939.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2940.     ("gravity",     ( ctypes.c_double * 4 )),] )
  2941.  
  2942. dWorldSetERP = _rpythonic_function_(        "dWorldSetERP", ctypes.c_void_p, [
  2943.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2944.     ("erp",     ctypes.c_double),] )
  2945.  
  2946. dWorldGetERP = _rpythonic_function_(        "dWorldGetERP", ctypes.c_double, [
  2947.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2948.  
  2949. dWorldSetCFM = _rpythonic_function_(        "dWorldSetCFM", ctypes.c_void_p, [
  2950.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2951.     ("cfm",     ctypes.c_double),] )
  2952.  
  2953. dWorldGetCFM = _rpythonic_function_(        "dWorldGetCFM", ctypes.c_double, [
  2954.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2955.  
  2956. dWorldStep = _rpythonic_function_(      "dWorldStep", ctypes.c_void_p, [
  2957.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2958.     ("stepsize",        ctypes.c_double),] )
  2959.  
  2960. dWorldImpulseToForce = _rpythonic_function_(        "dWorldImpulseToForce", ctypes.c_void_p, [
  2961.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2962.     ("stepsize",        ctypes.c_double),
  2963.     ("ix",      ctypes.c_double),
  2964.     ("iy",      ctypes.c_double),
  2965.     ("iz",      ctypes.c_double),
  2966.     ("force",       ( ctypes.c_double * 4 )),] )
  2967.  
  2968. dWorldQuickStep = _rpythonic_function_(     "dWorldQuickStep", ctypes.c_void_p, [
  2969.     ("w",       ctypes.POINTER(dxWorld)),
  2970.     ("stepsize",        ctypes.c_double),] )
  2971.  
  2972. dWorldSetQuickStepNumIterations = _rpythonic_function_(     "dWorldSetQuickStepNumIterations", ctypes.c_void_p, [
  2973.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2974.     ("num",     ctypes.c_int),] )
  2975.  
  2976. dWorldGetQuickStepNumIterations = _rpythonic_function_(     "dWorldGetQuickStepNumIterations", ctypes.c_int, [
  2977.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2978.  
  2979. dWorldSetQuickStepW = _rpythonic_function_(     "dWorldSetQuickStepW", ctypes.c_void_p, [
  2980.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2981.     ("over_relaxation",     ctypes.c_double),] )
  2982.  
  2983. dWorldGetQuickStepW = _rpythonic_function_(     "dWorldGetQuickStepW", ctypes.c_double, [
  2984.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2985.  
  2986. dWorldSetContactMaxCorrectingVel = _rpythonic_function_(        "dWorldSetContactMaxCorrectingVel", ctypes.c_void_p, [
  2987.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2988.     ("vel",     ctypes.c_double),] )
  2989.  
  2990. dWorldGetContactMaxCorrectingVel = _rpythonic_function_(        "dWorldGetContactMaxCorrectingVel", ctypes.c_double, [
  2991.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2992.  
  2993. dWorldSetContactSurfaceLayer = _rpythonic_function_(        "dWorldSetContactSurfaceLayer", ctypes.c_void_p, [
  2994.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  2995.     ("depth",       ctypes.c_double),] )
  2996.  
  2997. dWorldGetContactSurfaceLayer = _rpythonic_function_(        "dWorldGetContactSurfaceLayer", ctypes.c_double, [
  2998.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  2999.  
  3000. dWorldStepFast1 = _rpythonic_function_(     "dWorldStepFast1", ctypes.c_void_p, [
  3001.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3002.     ("stepsize",        ctypes.c_double),
  3003.     ("maxiterations",       ctypes.c_int),] )
  3004.  
  3005. dWorldSetAutoEnableDepthSF1 = _rpythonic_function_(     "dWorldSetAutoEnableDepthSF1", ctypes.c_void_p, [
  3006.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3007.     ("autoEnableDepth",     ctypes.c_int),] )
  3008.  
  3009. dWorldGetAutoEnableDepthSF1 = _rpythonic_function_(     "dWorldGetAutoEnableDepthSF1", ctypes.c_int, [
  3010.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3011.  
  3012. dWorldGetAutoDisableLinearThreshold = _rpythonic_function_(     "dWorldGetAutoDisableLinearThreshold", ctypes.c_double, [
  3013.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3014.  
  3015. dWorldSetAutoDisableLinearThreshold = _rpythonic_function_(     "dWorldSetAutoDisableLinearThreshold", ctypes.c_void_p, [
  3016.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3017.     ("linear_threshold",        ctypes.c_double),] )
  3018.  
  3019. dWorldGetAutoDisableAngularThreshold = _rpythonic_function_(        "dWorldGetAutoDisableAngularThreshold", ctypes.c_double, [
  3020.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3021.  
  3022. dWorldSetAutoDisableAngularThreshold = _rpythonic_function_(        "dWorldSetAutoDisableAngularThreshold", ctypes.c_void_p, [
  3023.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3024.     ("angular_threshold",       ctypes.c_double),] )
  3025.  
  3026. dWorldGetAutoDisableLinearAverageThreshold = _rpythonic_function_(      "dWorldGetAutoDisableLinearAverageThreshold", ctypes.c_double, [
  3027.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3028.  
  3029. dWorldSetAutoDisableLinearAverageThreshold = _rpythonic_function_(      "dWorldSetAutoDisableLinearAverageThreshold", ctypes.c_void_p, [
  3030.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3031.     ("linear_average_threshold",        ctypes.c_double),] )
  3032.  
  3033. dWorldGetAutoDisableAngularAverageThreshold = _rpythonic_function_(     "dWorldGetAutoDisableAngularAverageThreshold", ctypes.c_double, [
  3034.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3035.  
  3036. dWorldSetAutoDisableAngularAverageThreshold = _rpythonic_function_(     "dWorldSetAutoDisableAngularAverageThreshold", ctypes.c_void_p, [
  3037.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3038.     ("angular_average_threshold",       ctypes.c_double),] )
  3039.  
  3040. dWorldGetAutoDisableAverageSamplesCount = _rpythonic_function_(     "dWorldGetAutoDisableAverageSamplesCount", ctypes.c_int, [
  3041.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3042.  
  3043. dWorldSetAutoDisableAverageSamplesCount = _rpythonic_function_(     "dWorldSetAutoDisableAverageSamplesCount", ctypes.c_void_p, [
  3044.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3045.     ("average_samples_count",       ctypes.c_uint),] )
  3046.  
  3047. dWorldGetAutoDisableSteps = _rpythonic_function_(       "dWorldGetAutoDisableSteps", ctypes.c_int, [
  3048.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3049.  
  3050. dWorldSetAutoDisableSteps = _rpythonic_function_(       "dWorldSetAutoDisableSteps", ctypes.c_void_p, [
  3051.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3052.     ("steps",       ctypes.c_int),] )
  3053.  
  3054. dWorldGetAutoDisableTime = _rpythonic_function_(        "dWorldGetAutoDisableTime", ctypes.c_double, [
  3055.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3056.  
  3057. dWorldSetAutoDisableTime = _rpythonic_function_(        "dWorldSetAutoDisableTime", ctypes.c_void_p, [
  3058.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3059.     ("time",        ctypes.c_double),] )
  3060.  
  3061. dWorldGetAutoDisableFlag = _rpythonic_function_(        "dWorldGetAutoDisableFlag", ctypes.c_int, [
  3062.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3063.  
  3064. dWorldSetAutoDisableFlag = _rpythonic_function_(        "dWorldSetAutoDisableFlag", ctypes.c_void_p, [
  3065.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3066.     ("do_auto_disable",     ctypes.c_int),] )
  3067.  
  3068. dWorldGetLinearDampingThreshold = _rpythonic_function_(     "dWorldGetLinearDampingThreshold", ctypes.c_double, [
  3069.     ("w",       ctypes.POINTER(dxWorld)),] )
  3070.  
  3071. dWorldSetLinearDampingThreshold = _rpythonic_function_(     "dWorldSetLinearDampingThreshold", ctypes.c_void_p, [
  3072.     ("w",       ctypes.POINTER(dxWorld)),
  3073.     ("threshold",       ctypes.c_double),] )
  3074.  
  3075. dWorldGetAngularDampingThreshold = _rpythonic_function_(        "dWorldGetAngularDampingThreshold", ctypes.c_double, [
  3076.     ("w",       ctypes.POINTER(dxWorld)),] )
  3077.  
  3078. dWorldSetAngularDampingThreshold = _rpythonic_function_(        "dWorldSetAngularDampingThreshold", ctypes.c_void_p, [
  3079.     ("w",       ctypes.POINTER(dxWorld)),
  3080.     ("threshold",       ctypes.c_double),] )
  3081.  
  3082. dWorldGetLinearDamping = _rpythonic_function_(      "dWorldGetLinearDamping", ctypes.c_double, [
  3083.     ("w",       ctypes.POINTER(dxWorld)),] )
  3084.  
  3085. dWorldSetLinearDamping = _rpythonic_function_(      "dWorldSetLinearDamping", ctypes.c_void_p, [
  3086.     ("w",       ctypes.POINTER(dxWorld)),
  3087.     ("scale",       ctypes.c_double),] )
  3088.  
  3089. dWorldGetAngularDamping = _rpythonic_function_(     "dWorldGetAngularDamping", ctypes.c_double, [
  3090.     ("w",       ctypes.POINTER(dxWorld)),] )
  3091.  
  3092. dWorldSetAngularDamping = _rpythonic_function_(     "dWorldSetAngularDamping", ctypes.c_void_p, [
  3093.     ("w",       ctypes.POINTER(dxWorld)),
  3094.     ("scale",       ctypes.c_double),] )
  3095.  
  3096. dWorldSetDamping = _rpythonic_function_(        "dWorldSetDamping", ctypes.c_void_p, [
  3097.     ("w",       ctypes.POINTER(dxWorld)),
  3098.     ("linear_scale",        ctypes.c_double),
  3099.     ("angular_scale",       ctypes.c_double),] )
  3100.  
  3101. dWorldGetMaxAngularSpeed = _rpythonic_function_(        "dWorldGetMaxAngularSpeed", ctypes.c_double, [
  3102.     ("w",       ctypes.POINTER(dxWorld)),] )
  3103.  
  3104. dWorldSetMaxAngularSpeed = _rpythonic_function_(        "dWorldSetMaxAngularSpeed", ctypes.c_void_p, [
  3105.     ("w",       ctypes.POINTER(dxWorld)),
  3106.     ("max_speed",       ctypes.c_double),] )
  3107.  
  3108. dBodyGetAutoDisableLinearThreshold = _rpythonic_function_(      "dBodyGetAutoDisableLinearThreshold", ctypes.c_double, [
  3109.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3110.  
  3111. dBodySetAutoDisableLinearThreshold = _rpythonic_function_(      "dBodySetAutoDisableLinearThreshold", ctypes.c_void_p, [
  3112.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3113.     ("linear_average_threshold",        ctypes.c_double),] )
  3114.  
  3115. dBodyGetAutoDisableAngularThreshold = _rpythonic_function_(     "dBodyGetAutoDisableAngularThreshold", ctypes.c_double, [
  3116.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3117.  
  3118. dBodySetAutoDisableAngularThreshold = _rpythonic_function_(     "dBodySetAutoDisableAngularThreshold", ctypes.c_void_p, [
  3119.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3120.     ("angular_average_threshold",       ctypes.c_double),] )
  3121.  
  3122. dBodyGetAutoDisableAverageSamplesCount = _rpythonic_function_(      "dBodyGetAutoDisableAverageSamplesCount", ctypes.c_int, [
  3123.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3124.  
  3125. dBodySetAutoDisableAverageSamplesCount = _rpythonic_function_(      "dBodySetAutoDisableAverageSamplesCount", ctypes.c_void_p, [
  3126.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3127.     ("average_samples_count",       ctypes.c_uint),] )
  3128.  
  3129. dBodyGetAutoDisableSteps = _rpythonic_function_(        "dBodyGetAutoDisableSteps", ctypes.c_int, [
  3130.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3131.  
  3132. dBodySetAutoDisableSteps = _rpythonic_function_(        "dBodySetAutoDisableSteps", ctypes.c_void_p, [
  3133.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3134.     ("steps",       ctypes.c_int),] )
  3135.  
  3136. dBodyGetAutoDisableTime = _rpythonic_function_(     "dBodyGetAutoDisableTime", ctypes.c_double, [
  3137.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3138.  
  3139. dBodySetAutoDisableTime = _rpythonic_function_(     "dBodySetAutoDisableTime", ctypes.c_void_p, [
  3140.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3141.     ("time",        ctypes.c_double),] )
  3142.  
  3143. dBodyGetAutoDisableFlag = _rpythonic_function_(     "dBodyGetAutoDisableFlag", ctypes.c_int, [
  3144.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3145.  
  3146. dBodySetAutoDisableFlag = _rpythonic_function_(     "dBodySetAutoDisableFlag", ctypes.c_void_p, [
  3147.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3148.     ("do_auto_disable",     ctypes.c_int),] )
  3149.  
  3150. dBodySetAutoDisableDefaults = _rpythonic_function_(     "dBodySetAutoDisableDefaults", ctypes.c_void_p, [
  3151.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3152.  
  3153. dBodyGetWorld = _rpythonic_function_(       "dBodyGetWorld", ctypes.POINTER(ctypes.c_void_p), [
  3154.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3155.  
  3156. dBodyCreate = _rpythonic_function_(     "dBodyCreate", ctypes.POINTER(ctypes.c_void_p), [
  3157.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3158.  
  3159. dBodyDestroy = _rpythonic_function_(        "dBodyDestroy", ctypes.c_void_p, [
  3160.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3161.  
  3162. dBodySetData = _rpythonic_function_(        "dBodySetData", ctypes.c_void_p, [
  3163.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3164.     ("data",        ctypes.POINTER(ctypes.c_void_p)),] )
  3165.  
  3166. dBodyGetData = _rpythonic_function_(        "dBodyGetData", ctypes.POINTER(ctypes.c_void_p), [
  3167.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3168.  
  3169. dBodySetPosition = _rpythonic_function_(        "dBodySetPosition", ctypes.c_void_p, [
  3170.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3171.     ("x",       ctypes.c_double),
  3172.     ("y",       ctypes.c_double),
  3173.     ("z",       ctypes.c_double),] )
  3174.  
  3175. dBodySetRotation = _rpythonic_function_(        "dBodySetRotation", ctypes.c_void_p, [
  3176.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3177.     ("R",       ( ctypes.c_double * 12 )),] )
  3178.  
  3179. dBodySetQuaternion = _rpythonic_function_(      "dBodySetQuaternion", ctypes.c_void_p, [
  3180.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3181.     ("q",       ( ctypes.c_double * 4 )),] )
  3182.  
  3183. dBodySetLinearVel = _rpythonic_function_(       "dBodySetLinearVel", ctypes.c_void_p, [
  3184.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3185.     ("x",       ctypes.c_double),
  3186.     ("y",       ctypes.c_double),
  3187.     ("z",       ctypes.c_double),] )
  3188.  
  3189. dBodySetAngularVel = _rpythonic_function_(      "dBodySetAngularVel", ctypes.c_void_p, [
  3190.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3191.     ("x",       ctypes.c_double),
  3192.     ("y",       ctypes.c_double),
  3193.     ("z",       ctypes.c_double),] )
  3194.  
  3195. dBodyGetPosition = _rpythonic_function_(        "dBodyGetPosition", ctypes.POINTER(ctypes.c_double), [
  3196.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3197.  
  3198. dBodyCopyPosition = _rpythonic_function_(       "dBodyCopyPosition", ctypes.c_void_p, [
  3199.     ("body",        ctypes.POINTER(dxBody)),
  3200.     ("pos",     ( ctypes.c_double * 4 )),] )
  3201.  
  3202. dBodyGetRotation = _rpythonic_function_(        "dBodyGetRotation", ctypes.POINTER(ctypes.c_double), [
  3203.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3204.  
  3205. dBodyCopyRotation = _rpythonic_function_(       "dBodyCopyRotation", ctypes.c_void_p, [
  3206.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3207.     ("R",       ( ctypes.c_double * 12 )),] )
  3208.  
  3209. dBodyGetQuaternion = _rpythonic_function_(      "dBodyGetQuaternion", ctypes.POINTER(ctypes.c_double), [
  3210.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3211.  
  3212. dBodyCopyQuaternion = _rpythonic_function_(     "dBodyCopyQuaternion", ctypes.c_void_p, [
  3213.     ("body",        ctypes.POINTER(dxBody)),
  3214.     ("quat",        ( ctypes.c_double * 4 )),] )
  3215.  
  3216. dBodyGetLinearVel = _rpythonic_function_(       "dBodyGetLinearVel", ctypes.POINTER(ctypes.c_double), [
  3217.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3218.  
  3219. dBodyGetAngularVel = _rpythonic_function_(      "dBodyGetAngularVel", ctypes.POINTER(ctypes.c_double), [
  3220.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3221.  
  3222. dBodySetMass = _rpythonic_function_(        "dBodySetMass", ctypes.c_void_p, [
  3223.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3224.     ("mass",        ctypes.POINTER(dMass)),] )
  3225.  
  3226. dBodyGetMass = _rpythonic_function_(        "dBodyGetMass", ctypes.c_void_p, [
  3227.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3228.     ("mass",        ctypes.POINTER(dMass)),] )
  3229.  
  3230. dBodyAddForce = _rpythonic_function_(       "dBodyAddForce", ctypes.c_void_p, [
  3231.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3232.     ("fx",      ctypes.c_double),
  3233.     ("fy",      ctypes.c_double),
  3234.     ("fz",      ctypes.c_double),] )
  3235.  
  3236. dBodyAddTorque = _rpythonic_function_(      "dBodyAddTorque", ctypes.c_void_p, [
  3237.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3238.     ("fx",      ctypes.c_double),
  3239.     ("fy",      ctypes.c_double),
  3240.     ("fz",      ctypes.c_double),] )
  3241.  
  3242. dBodyAddRelForce = _rpythonic_function_(        "dBodyAddRelForce", ctypes.c_void_p, [
  3243.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3244.     ("fx",      ctypes.c_double),
  3245.     ("fy",      ctypes.c_double),
  3246.     ("fz",      ctypes.c_double),] )
  3247.  
  3248. dBodyAddRelTorque = _rpythonic_function_(       "dBodyAddRelTorque", ctypes.c_void_p, [
  3249.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3250.     ("fx",      ctypes.c_double),
  3251.     ("fy",      ctypes.c_double),
  3252.     ("fz",      ctypes.c_double),] )
  3253.  
  3254. dBodyAddForceAtPos = _rpythonic_function_(      "dBodyAddForceAtPos", ctypes.c_void_p, [
  3255.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3256.     ("fx",      ctypes.c_double),
  3257.     ("fy",      ctypes.c_double),
  3258.     ("fz",      ctypes.c_double),
  3259.     ("px",      ctypes.c_double),
  3260.     ("py",      ctypes.c_double),
  3261.     ("pz",      ctypes.c_double),] )
  3262.  
  3263. dBodyAddForceAtRelPos = _rpythonic_function_(       "dBodyAddForceAtRelPos", ctypes.c_void_p, [
  3264.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3265.     ("fx",      ctypes.c_double),
  3266.     ("fy",      ctypes.c_double),
  3267.     ("fz",      ctypes.c_double),
  3268.     ("px",      ctypes.c_double),
  3269.     ("py",      ctypes.c_double),
  3270.     ("pz",      ctypes.c_double),] )
  3271.  
  3272. dBodyAddRelForceAtPos = _rpythonic_function_(       "dBodyAddRelForceAtPos", ctypes.c_void_p, [
  3273.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3274.     ("fx",      ctypes.c_double),
  3275.     ("fy",      ctypes.c_double),
  3276.     ("fz",      ctypes.c_double),
  3277.     ("px",      ctypes.c_double),
  3278.     ("py",      ctypes.c_double),
  3279.     ("pz",      ctypes.c_double),] )
  3280.  
  3281. dBodyAddRelForceAtRelPos = _rpythonic_function_(        "dBodyAddRelForceAtRelPos", ctypes.c_void_p, [
  3282.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3283.     ("fx",      ctypes.c_double),
  3284.     ("fy",      ctypes.c_double),
  3285.     ("fz",      ctypes.c_double),
  3286.     ("px",      ctypes.c_double),
  3287.     ("py",      ctypes.c_double),
  3288.     ("pz",      ctypes.c_double),] )
  3289.  
  3290. dBodyGetForce = _rpythonic_function_(       "dBodyGetForce", ctypes.POINTER(ctypes.c_double), [
  3291.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3292.  
  3293. dBodyGetTorque = _rpythonic_function_(      "dBodyGetTorque", ctypes.POINTER(ctypes.c_double), [
  3294.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3295.  
  3296. dBodySetForce = _rpythonic_function_(       "dBodySetForce", ctypes.c_void_p, [
  3297.     ("b",       ctypes.POINTER(dxBody)),
  3298.     ("x",       ctypes.c_double),
  3299.     ("y",       ctypes.c_double),
  3300.     ("z",       ctypes.c_double),] )
  3301.  
  3302. dBodySetTorque = _rpythonic_function_(      "dBodySetTorque", ctypes.c_void_p, [
  3303.     ("b",       ctypes.POINTER(dxBody)),
  3304.     ("x",       ctypes.c_double),
  3305.     ("y",       ctypes.c_double),
  3306.     ("z",       ctypes.c_double),] )
  3307.  
  3308. dBodyGetRelPointPos = _rpythonic_function_(     "dBodyGetRelPointPos", ctypes.c_void_p, [
  3309.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3310.     ("px",      ctypes.c_double),
  3311.     ("py",      ctypes.c_double),
  3312.     ("pz",      ctypes.c_double),
  3313.     ("result",      ( ctypes.c_double * 4 )),] )
  3314.  
  3315. dBodyGetRelPointVel = _rpythonic_function_(     "dBodyGetRelPointVel", ctypes.c_void_p, [
  3316.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3317.     ("px",      ctypes.c_double),
  3318.     ("py",      ctypes.c_double),
  3319.     ("pz",      ctypes.c_double),
  3320.     ("result",      ( ctypes.c_double * 4 )),] )
  3321.  
  3322. dBodyGetPointVel = _rpythonic_function_(        "dBodyGetPointVel", ctypes.c_void_p, [
  3323.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3324.     ("px",      ctypes.c_double),
  3325.     ("py",      ctypes.c_double),
  3326.     ("pz",      ctypes.c_double),
  3327.     ("result",      ( ctypes.c_double * 4 )),] )
  3328.  
  3329. dBodyGetPosRelPoint = _rpythonic_function_(     "dBodyGetPosRelPoint", ctypes.c_void_p, [
  3330.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3331.     ("px",      ctypes.c_double),
  3332.     ("py",      ctypes.c_double),
  3333.     ("pz",      ctypes.c_double),
  3334.     ("result",      ( ctypes.c_double * 4 )),] )
  3335.  
  3336. dBodyVectorToWorld = _rpythonic_function_(      "dBodyVectorToWorld", ctypes.c_void_p, [
  3337.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3338.     ("px",      ctypes.c_double),
  3339.     ("py",      ctypes.c_double),
  3340.     ("pz",      ctypes.c_double),
  3341.     ("result",      ( ctypes.c_double * 4 )),] )
  3342.  
  3343. dBodyVectorFromWorld = _rpythonic_function_(        "dBodyVectorFromWorld", ctypes.c_void_p, [
  3344.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3345.     ("px",      ctypes.c_double),
  3346.     ("py",      ctypes.c_double),
  3347.     ("pz",      ctypes.c_double),
  3348.     ("result",      ( ctypes.c_double * 4 )),] )
  3349.  
  3350. dBodySetFiniteRotationMode = _rpythonic_function_(      "dBodySetFiniteRotationMode", ctypes.c_void_p, [
  3351.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3352.     ("mode",        ctypes.c_int),] )
  3353.  
  3354. dBodySetFiniteRotationAxis = _rpythonic_function_(      "dBodySetFiniteRotationAxis", ctypes.c_void_p, [
  3355.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3356.     ("x",       ctypes.c_double),
  3357.     ("y",       ctypes.c_double),
  3358.     ("z",       ctypes.c_double),] )
  3359.  
  3360. dBodyGetFiniteRotationMode = _rpythonic_function_(      "dBodyGetFiniteRotationMode", ctypes.c_int, [
  3361.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3362.  
  3363. dBodyGetFiniteRotationAxis = _rpythonic_function_(      "dBodyGetFiniteRotationAxis", ctypes.c_void_p, [
  3364.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3365.     ("result",      ( ctypes.c_double * 4 )),] )
  3366.  
  3367. dBodyGetNumJoints = _rpythonic_function_(       "dBodyGetNumJoints", ctypes.c_int, [
  3368.     ("b",       ctypes.POINTER(dxBody)),] )
  3369.  
  3370. dBodyGetJoint = _rpythonic_function_(       "dBodyGetJoint", ctypes.POINTER(ctypes.c_void_p), [
  3371.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3372.     ("index",       ctypes.c_int),] )
  3373.  
  3374. dBodySetDynamic = _rpythonic_function_(     "dBodySetDynamic", ctypes.c_void_p, [
  3375.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3376.  
  3377. dBodySetKinematic = _rpythonic_function_(       "dBodySetKinematic", ctypes.c_void_p, [
  3378.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3379.  
  3380. dBodyIsKinematic = _rpythonic_function_(        "dBodyIsKinematic", ctypes.c_int, [
  3381.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3382.  
  3383. dBodyEnable = _rpythonic_function_(     "dBodyEnable", ctypes.c_void_p, [
  3384.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3385.  
  3386. dBodyDisable = _rpythonic_function_(        "dBodyDisable", ctypes.c_void_p, [
  3387.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3388.  
  3389. dBodyIsEnabled = _rpythonic_function_(      "dBodyIsEnabled", ctypes.c_int, [
  3390.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3391.  
  3392. dBodySetGravityMode = _rpythonic_function_(     "dBodySetGravityMode", ctypes.c_void_p, [
  3393.     ("b",       ctypes.POINTER(dxBody)),
  3394.     ("mode",        ctypes.c_int),] )
  3395.  
  3396. dBodyGetGravityMode = _rpythonic_function_(     "dBodyGetGravityMode", ctypes.c_int, [
  3397.     ("b",       ctypes.POINTER(dxBody)),] )
  3398.  
  3399. dBodySetMovedCallback = _rpythonic_function_(       "dBodySetMovedCallback", ctypes.c_void_p, [
  3400.     ("b",       ctypes.POINTER(dxBody)),
  3401.     ("callback",        ctypes.c_void_p),] )
  3402.  
  3403. callback = _rpythonic_function_(        "callback", ctypes.c_void_p, [
  3404.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3405.  
  3406. dBodyGetFirstGeom = _rpythonic_function_(       "dBodyGetFirstGeom", ctypes.POINTER(ctypes.c_void_p), [
  3407.     ("b",       ctypes.POINTER(dxBody)),] )
  3408.  
  3409. dBodyGetNextGeom = _rpythonic_function_(        "dBodyGetNextGeom", ctypes.POINTER(ctypes.c_void_p), [
  3410.     ("g",       ctypes.POINTER(dxGeom)),] )
  3411.  
  3412. dBodySetDampingDefaults = _rpythonic_function_(     "dBodySetDampingDefaults", ctypes.c_void_p, [
  3413.     ("b",       ctypes.POINTER(dxBody)),] )
  3414.  
  3415. dBodyGetLinearDamping = _rpythonic_function_(       "dBodyGetLinearDamping", ctypes.c_double, [
  3416.     ("b",       ctypes.POINTER(dxBody)),] )
  3417.  
  3418. dBodySetLinearDamping = _rpythonic_function_(       "dBodySetLinearDamping", ctypes.c_void_p, [
  3419.     ("b",       ctypes.POINTER(dxBody)),
  3420.     ("scale",       ctypes.c_double),] )
  3421.  
  3422. dBodyGetAngularDamping = _rpythonic_function_(      "dBodyGetAngularDamping", ctypes.c_double, [
  3423.     ("b",       ctypes.POINTER(dxBody)),] )
  3424.  
  3425. dBodySetAngularDamping = _rpythonic_function_(      "dBodySetAngularDamping", ctypes.c_void_p, [
  3426.     ("b",       ctypes.POINTER(dxBody)),
  3427.     ("scale",       ctypes.c_double),] )
  3428.  
  3429. dBodySetDamping = _rpythonic_function_(     "dBodySetDamping", ctypes.c_void_p, [
  3430.     ("b",       ctypes.POINTER(dxBody)),
  3431.     ("linear_scale",        ctypes.c_double),
  3432.     ("angular_scale",       ctypes.c_double),] )
  3433.  
  3434. dBodyGetLinearDampingThreshold = _rpythonic_function_(      "dBodyGetLinearDampingThreshold", ctypes.c_double, [
  3435.     ("b",       ctypes.POINTER(dxBody)),] )
  3436.  
  3437. dBodySetLinearDampingThreshold = _rpythonic_function_(      "dBodySetLinearDampingThreshold", ctypes.c_void_p, [
  3438.     ("b",       ctypes.POINTER(dxBody)),
  3439.     ("threshold",       ctypes.c_double),] )
  3440.  
  3441. dBodyGetAngularDampingThreshold = _rpythonic_function_(     "dBodyGetAngularDampingThreshold", ctypes.c_double, [
  3442.     ("b",       ctypes.POINTER(dxBody)),] )
  3443.  
  3444. dBodySetAngularDampingThreshold = _rpythonic_function_(     "dBodySetAngularDampingThreshold", ctypes.c_void_p, [
  3445.     ("b",       ctypes.POINTER(dxBody)),
  3446.     ("threshold",       ctypes.c_double),] )
  3447.  
  3448. dBodyGetMaxAngularSpeed = _rpythonic_function_(     "dBodyGetMaxAngularSpeed", ctypes.c_double, [
  3449.     ("b",       ctypes.POINTER(dxBody)),] )
  3450.  
  3451. dBodySetMaxAngularSpeed = _rpythonic_function_(     "dBodySetMaxAngularSpeed", ctypes.c_void_p, [
  3452.     ("b",       ctypes.POINTER(dxBody)),
  3453.     ("max_speed",       ctypes.c_double),] )
  3454.  
  3455. dBodyGetGyroscopicMode = _rpythonic_function_(      "dBodyGetGyroscopicMode", ctypes.c_int, [
  3456.     ("b",       ctypes.POINTER(dxBody)),] )
  3457.  
  3458. dBodySetGyroscopicMode = _rpythonic_function_(      "dBodySetGyroscopicMode", ctypes.c_void_p, [
  3459.     ("b",       ctypes.POINTER(dxBody)),
  3460.     ("enabled",     ctypes.c_int),] )
  3461.  
  3462. dJointCreateBall = _rpythonic_function_(        "dJointCreateBall", ctypes.POINTER(ctypes.c_void_p), [
  3463.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3464.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3465.  
  3466. dJointCreateHinge = _rpythonic_function_(       "dJointCreateHinge", ctypes.POINTER(ctypes.c_void_p), [
  3467.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3468.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3469.  
  3470. dJointCreateSlider = _rpythonic_function_(      "dJointCreateSlider", ctypes.POINTER(ctypes.c_void_p), [
  3471.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3472.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3473.  
  3474. dJointCreateContact = _rpythonic_function_(     "dJointCreateContact", ctypes.POINTER(ctypes.c_void_p), [
  3475.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3476.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3477.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3478.  
  3479. dJointCreateHinge2 = _rpythonic_function_(      "dJointCreateHinge2", ctypes.POINTER(ctypes.c_void_p), [
  3480.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3481.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3482.  
  3483. dJointCreateUniversal = _rpythonic_function_(       "dJointCreateUniversal", ctypes.POINTER(ctypes.c_void_p), [
  3484.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3485.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3486.  
  3487. dJointCreatePR = _rpythonic_function_(      "dJointCreatePR", ctypes.POINTER(ctypes.c_void_p), [
  3488.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3489.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3490.  
  3491. dJointCreatePU = _rpythonic_function_(      "dJointCreatePU", ctypes.POINTER(ctypes.c_void_p), [
  3492.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3493.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3494.  
  3495. dJointCreatePiston = _rpythonic_function_(      "dJointCreatePiston", ctypes.POINTER(ctypes.c_void_p), [
  3496.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3497.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3498.  
  3499. dJointCreateFixed = _rpythonic_function_(       "dJointCreateFixed", ctypes.POINTER(ctypes.c_void_p), [
  3500.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3501.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3502.  
  3503. dJointCreateNull = _rpythonic_function_(        "dJointCreateNull", ctypes.POINTER(ctypes.c_void_p), [
  3504.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3505.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3506.  
  3507. dJointCreateAMotor = _rpythonic_function_(      "dJointCreateAMotor", ctypes.POINTER(ctypes.c_void_p), [
  3508.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3509.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3510.  
  3511. dJointCreateLMotor = _rpythonic_function_(      "dJointCreateLMotor", ctypes.POINTER(ctypes.c_void_p), [
  3512.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3513.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3514.  
  3515. dJointCreatePlane2D = _rpythonic_function_(     "dJointCreatePlane2D", ctypes.POINTER(ctypes.c_void_p), [
  3516.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3517.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3518.  
  3519. dJointDestroy = _rpythonic_function_(       "dJointDestroy", ctypes.c_void_p, [
  3520.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3521.  
  3522. dJointGroupCreate = _rpythonic_function_(       "dJointGroupCreate", ctypes.POINTER(ctypes.c_void_p), [
  3523.     ("max_size",        ctypes.c_int),] )
  3524.  
  3525. dJointGroupDestroy = _rpythonic_function_(      "dJointGroupDestroy", ctypes.c_void_p, [
  3526.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3527.  
  3528. dJointGroupEmpty = _rpythonic_function_(        "dJointGroupEmpty", ctypes.c_void_p, [
  3529.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3530.  
  3531. dJointGetNumBodies = _rpythonic_function_(      "dJointGetNumBodies", ctypes.c_int, [
  3532.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3533.  
  3534. dJointAttach = _rpythonic_function_(        "dJointAttach", ctypes.c_void_p, [
  3535.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3536.     ("body1",       ctypes.POINTER(dxBody)),
  3537.     ("body2",       ctypes.POINTER(dxBody)),] )
  3538.  
  3539. dJointEnable = _rpythonic_function_(        "dJointEnable", ctypes.c_void_p, [
  3540.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3541.  
  3542. dJointDisable = _rpythonic_function_(       "dJointDisable", ctypes.c_void_p, [
  3543.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3544.  
  3545. dJointIsEnabled = _rpythonic_function_(     "dJointIsEnabled", ctypes.c_int, [
  3546.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3547.  
  3548. dJointSetData = _rpythonic_function_(       "dJointSetData", ctypes.c_void_p, [
  3549.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3550.     ("data",        ctypes.POINTER(ctypes.c_void_p)),] )
  3551.  
  3552. dJointGetData = _rpythonic_function_(       "dJointGetData", ctypes.POINTER(ctypes.c_void_p), [
  3553.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3554.  
  3555. dJointGetType = _rpythonic_function_(       "dJointGetType", ctypes.c_int, [
  3556.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3557.  
  3558. dJointGetBody = _rpythonic_function_(       "dJointGetBody", ctypes.POINTER(ctypes.c_void_p), [
  3559.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3560.     ("index",       ctypes.c_int),] )
  3561.  
  3562. dJointSetFeedback = _rpythonic_function_(       "dJointSetFeedback", ctypes.c_void_p, [
  3563.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3564.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3565.  
  3566. dJointGetFeedback = _rpythonic_function_(       "dJointGetFeedback", ctypes.POINTER(dJointFeedback), [
  3567.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3568.  
  3569. dJointSetBallAnchor = _rpythonic_function_(     "dJointSetBallAnchor", ctypes.c_void_p, [
  3570.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3571.     ("x",       ctypes.c_double),
  3572.     ("y",       ctypes.c_double),
  3573.     ("z",       ctypes.c_double),] )
  3574.  
  3575. dJointSetBallAnchor2 = _rpythonic_function_(        "dJointSetBallAnchor2", ctypes.c_void_p, [
  3576.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3577.     ("x",       ctypes.c_double),
  3578.     ("y",       ctypes.c_double),
  3579.     ("z",       ctypes.c_double),] )
  3580.  
  3581. dJointSetBallParam = _rpythonic_function_(      "dJointSetBallParam", ctypes.c_void_p, [
  3582.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3583.     ("parameter",       ctypes.c_int),
  3584.     ("value",       ctypes.c_double),] )
  3585.  
  3586. dJointSetHingeAnchor = _rpythonic_function_(        "dJointSetHingeAnchor", ctypes.c_void_p, [
  3587.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3588.     ("x",       ctypes.c_double),
  3589.     ("y",       ctypes.c_double),
  3590.     ("z",       ctypes.c_double),] )
  3591.  
  3592. dJointSetHingeAnchorDelta = _rpythonic_function_(       "dJointSetHingeAnchorDelta", ctypes.c_void_p, [
  3593.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3594.     ("x",       ctypes.c_double),
  3595.     ("y",       ctypes.c_double),
  3596.     ("z",       ctypes.c_double),
  3597.     ("ax",      ctypes.c_double),
  3598.     ("ay",      ctypes.c_double),
  3599.     ("az",      ctypes.c_double),] )
  3600.  
  3601. dJointSetHingeAxis = _rpythonic_function_(      "dJointSetHingeAxis", ctypes.c_void_p, [
  3602.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3603.     ("x",       ctypes.c_double),
  3604.     ("y",       ctypes.c_double),
  3605.     ("z",       ctypes.c_double),] )
  3606.  
  3607. dJointSetHingeAxisOffset = _rpythonic_function_(        "dJointSetHingeAxisOffset", ctypes.c_void_p, [
  3608.     ("j",       ctypes.POINTER(dxJoint)),
  3609.     ("x",       ctypes.c_double),
  3610.     ("y",       ctypes.c_double),
  3611.     ("z",       ctypes.c_double),
  3612.     ("angle",       ctypes.c_double),] )
  3613.  
  3614. dJointSetHingeParam = _rpythonic_function_(     "dJointSetHingeParam", ctypes.c_void_p, [
  3615.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3616.     ("parameter",       ctypes.c_int),
  3617.     ("value",       ctypes.c_double),] )
  3618.  
  3619. dJointAddHingeTorque = _rpythonic_function_(        "dJointAddHingeTorque", ctypes.c_void_p, [
  3620.     ("joint",       ctypes.POINTER(dxJoint)),
  3621.     ("torque",      ctypes.c_double),] )
  3622.  
  3623. dJointSetSliderAxis = _rpythonic_function_(     "dJointSetSliderAxis", ctypes.c_void_p, [
  3624.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3625.     ("x",       ctypes.c_double),
  3626.     ("y",       ctypes.c_double),
  3627.     ("z",       ctypes.c_double),] )
  3628.  
  3629. dJointSetSliderAxisDelta = _rpythonic_function_(        "dJointSetSliderAxisDelta", ctypes.c_void_p, [
  3630.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3631.     ("x",       ctypes.c_double),
  3632.     ("y",       ctypes.c_double),
  3633.     ("z",       ctypes.c_double),
  3634.     ("ax",      ctypes.c_double),
  3635.     ("ay",      ctypes.c_double),
  3636.     ("az",      ctypes.c_double),] )
  3637.  
  3638. dJointSetSliderParam = _rpythonic_function_(        "dJointSetSliderParam", ctypes.c_void_p, [
  3639.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3640.     ("parameter",       ctypes.c_int),
  3641.     ("value",       ctypes.c_double),] )
  3642.  
  3643. dJointAddSliderForce = _rpythonic_function_(        "dJointAddSliderForce", ctypes.c_void_p, [
  3644.     ("joint",       ctypes.POINTER(dxJoint)),
  3645.     ("force",       ctypes.c_double),] )
  3646.  
  3647. dJointSetHinge2Anchor = _rpythonic_function_(       "dJointSetHinge2Anchor", ctypes.c_void_p, [
  3648.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3649.     ("x",       ctypes.c_double),
  3650.     ("y",       ctypes.c_double),
  3651.     ("z",       ctypes.c_double),] )
  3652.  
  3653. dJointSetHinge2Axis1 = _rpythonic_function_(        "dJointSetHinge2Axis1", ctypes.c_void_p, [
  3654.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3655.     ("x",       ctypes.c_double),
  3656.     ("y",       ctypes.c_double),
  3657.     ("z",       ctypes.c_double),] )
  3658.  
  3659. dJointSetHinge2Axis2 = _rpythonic_function_(        "dJointSetHinge2Axis2", ctypes.c_void_p, [
  3660.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3661.     ("x",       ctypes.c_double),
  3662.     ("y",       ctypes.c_double),
  3663.     ("z",       ctypes.c_double),] )
  3664.  
  3665. dJointSetHinge2Param = _rpythonic_function_(        "dJointSetHinge2Param", ctypes.c_void_p, [
  3666.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3667.     ("parameter",       ctypes.c_int),
  3668.     ("value",       ctypes.c_double),] )
  3669.  
  3670. dJointAddHinge2Torques = _rpythonic_function_(      "dJointAddHinge2Torques", ctypes.c_void_p, [
  3671.     ("joint",       ctypes.POINTER(dxJoint)),
  3672.     ("torque1",     ctypes.c_double),
  3673.     ("torque2",     ctypes.c_double),] )
  3674.  
  3675. dJointSetUniversalAnchor = _rpythonic_function_(        "dJointSetUniversalAnchor", ctypes.c_void_p, [
  3676.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3677.     ("x",       ctypes.c_double),
  3678.     ("y",       ctypes.c_double),
  3679.     ("z",       ctypes.c_double),] )
  3680.  
  3681. dJointSetUniversalAxis1 = _rpythonic_function_(     "dJointSetUniversalAxis1", ctypes.c_void_p, [
  3682.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3683.     ("x",       ctypes.c_double),
  3684.     ("y",       ctypes.c_double),
  3685.     ("z",       ctypes.c_double),] )
  3686.  
  3687. dJointSetUniversalAxis1Offset = _rpythonic_function_(       "dJointSetUniversalAxis1Offset", ctypes.c_void_p, [
  3688.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3689.     ("x",       ctypes.c_double),
  3690.     ("y",       ctypes.c_double),
  3691.     ("z",       ctypes.c_double),
  3692.     ("offset1",     ctypes.c_double),
  3693.     ("offset2",     ctypes.c_double),] )
  3694.  
  3695. dJointSetUniversalAxis2 = _rpythonic_function_(     "dJointSetUniversalAxis2", ctypes.c_void_p, [
  3696.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3697.     ("x",       ctypes.c_double),
  3698.     ("y",       ctypes.c_double),
  3699.     ("z",       ctypes.c_double),] )
  3700.  
  3701. dJointSetUniversalAxis2Offset = _rpythonic_function_(       "dJointSetUniversalAxis2Offset", ctypes.c_void_p, [
  3702.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3703.     ("x",       ctypes.c_double),
  3704.     ("y",       ctypes.c_double),
  3705.     ("z",       ctypes.c_double),
  3706.     ("offset1",     ctypes.c_double),
  3707.     ("offset2",     ctypes.c_double),] )
  3708.  
  3709. dJointSetUniversalParam = _rpythonic_function_(     "dJointSetUniversalParam", ctypes.c_void_p, [
  3710.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3711.     ("parameter",       ctypes.c_int),
  3712.     ("value",       ctypes.c_double),] )
  3713.  
  3714. dJointAddUniversalTorques = _rpythonic_function_(       "dJointAddUniversalTorques", ctypes.c_void_p, [
  3715.     ("joint",       ctypes.POINTER(dxJoint)),
  3716.     ("torque1",     ctypes.c_double),
  3717.     ("torque2",     ctypes.c_double),] )
  3718.  
  3719. dJointSetPRAnchor = _rpythonic_function_(       "dJointSetPRAnchor", ctypes.c_void_p, [
  3720.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3721.     ("x",       ctypes.c_double),
  3722.     ("y",       ctypes.c_double),
  3723.     ("z",       ctypes.c_double),] )
  3724.  
  3725. dJointSetPRAxis1 = _rpythonic_function_(        "dJointSetPRAxis1", ctypes.c_void_p, [
  3726.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3727.     ("x",       ctypes.c_double),
  3728.     ("y",       ctypes.c_double),
  3729.     ("z",       ctypes.c_double),] )
  3730.  
  3731. dJointSetPRAxis2 = _rpythonic_function_(        "dJointSetPRAxis2", ctypes.c_void_p, [
  3732.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3733.     ("x",       ctypes.c_double),
  3734.     ("y",       ctypes.c_double),
  3735.     ("z",       ctypes.c_double),] )
  3736.  
  3737. dJointSetPRParam = _rpythonic_function_(        "dJointSetPRParam", ctypes.c_void_p, [
  3738.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3739.     ("parameter",       ctypes.c_int),
  3740.     ("value",       ctypes.c_double),] )
  3741.  
  3742. dJointAddPRTorque = _rpythonic_function_(       "dJointAddPRTorque", ctypes.c_void_p, [
  3743.     ("j",       ctypes.POINTER(dxJoint)),
  3744.     ("torque",      ctypes.c_double),] )
  3745.  
  3746. dJointSetPUAnchor = _rpythonic_function_(       "dJointSetPUAnchor", ctypes.c_void_p, [
  3747.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3748.     ("x",       ctypes.c_double),
  3749.     ("y",       ctypes.c_double),
  3750.     ("z",       ctypes.c_double),] )
  3751.  
  3752. dJointSetPUAnchorDelta = _rpythonic_function_(      "dJointSetPUAnchorDelta", ctypes.c_void_p, [
  3753.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3754.     ("x",       ctypes.c_double),
  3755.     ("y",       ctypes.c_double),
  3756.     ("z",       ctypes.c_double),
  3757.     ("dx",      ctypes.c_double),
  3758.     ("dy",      ctypes.c_double),
  3759.     ("dz",      ctypes.c_double),] )
  3760.  
  3761. dJointSetPUAnchorOffset = _rpythonic_function_(     "dJointSetPUAnchorOffset", ctypes.c_void_p, [
  3762.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3763.     ("x",       ctypes.c_double),
  3764.     ("y",       ctypes.c_double),
  3765.     ("z",       ctypes.c_double),
  3766.     ("dx",      ctypes.c_double),
  3767.     ("dy",      ctypes.c_double),
  3768.     ("dz",      ctypes.c_double),] )
  3769.  
  3770. dJointSetPUAxis1 = _rpythonic_function_(        "dJointSetPUAxis1", ctypes.c_void_p, [
  3771.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3772.     ("x",       ctypes.c_double),
  3773.     ("y",       ctypes.c_double),
  3774.     ("z",       ctypes.c_double),] )
  3775.  
  3776. dJointSetPUAxis2 = _rpythonic_function_(        "dJointSetPUAxis2", ctypes.c_void_p, [
  3777.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3778.     ("x",       ctypes.c_double),
  3779.     ("y",       ctypes.c_double),
  3780.     ("z",       ctypes.c_double),] )
  3781.  
  3782. dJointSetPUAxis3 = _rpythonic_function_(        "dJointSetPUAxis3", ctypes.c_void_p, [
  3783.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3784.     ("x",       ctypes.c_double),
  3785.     ("y",       ctypes.c_double),
  3786.     ("z",       ctypes.c_double),] )
  3787.  
  3788. dJointSetPUAxisP = _rpythonic_function_(        "dJointSetPUAxisP", ctypes.c_void_p, [
  3789.     ("C_id",        ctypes.POINTER(dxJoint)),
  3790.     ("x",       ctypes.c_double),
  3791.     ("y",       ctypes.c_double),
  3792.     ("z",       ctypes.c_double),] )
  3793.  
  3794. dJointSetPUParam = _rpythonic_function_(        "dJointSetPUParam", ctypes.c_void_p, [
  3795.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3796.     ("parameter",       ctypes.c_int),
  3797.     ("value",       ctypes.c_double),] )
  3798.  
  3799. dJointAddPUTorque = _rpythonic_function_(       "dJointAddPUTorque", ctypes.c_void_p, [
  3800.     ("j",       ctypes.POINTER(dxJoint)),
  3801.     ("torque",      ctypes.c_double),] )
  3802.  
  3803. dJointSetPistonAnchor = _rpythonic_function_(       "dJointSetPistonAnchor", ctypes.c_void_p, [
  3804.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3805.     ("x",       ctypes.c_double),
  3806.     ("y",       ctypes.c_double),
  3807.     ("z",       ctypes.c_double),] )
  3808.  
  3809. dJointSetPistonAnchorOffset = _rpythonic_function_(     "dJointSetPistonAnchorOffset", ctypes.c_void_p, [
  3810.     ("j",       ctypes.POINTER(dxJoint)),
  3811.     ("x",       ctypes.c_double),
  3812.     ("y",       ctypes.c_double),
  3813.     ("z",       ctypes.c_double),
  3814.     ("dx",      ctypes.c_double),
  3815.     ("dy",      ctypes.c_double),
  3816.     ("dz",      ctypes.c_double),] )
  3817.  
  3818. dJointSetPistonAxis = _rpythonic_function_(     "dJointSetPistonAxis", ctypes.c_void_p, [
  3819.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3820.     ("x",       ctypes.c_double),
  3821.     ("y",       ctypes.c_double),
  3822.     ("z",       ctypes.c_double),] )
  3823.  
  3824. dJointSetPistonAxisDelta = _rpythonic_function_(        "dJointSetPistonAxisDelta", ctypes.c_void_p, [
  3825.     ("j",       ctypes.POINTER(dxJoint)),
  3826.     ("x",       ctypes.c_double),
  3827.     ("y",       ctypes.c_double),
  3828.     ("z",       ctypes.c_double),
  3829.     ("ax",      ctypes.c_double),
  3830.     ("ay",      ctypes.c_double),
  3831.     ("az",      ctypes.c_double),] )
  3832.  
  3833. dJointSetPistonParam = _rpythonic_function_(        "dJointSetPistonParam", ctypes.c_void_p, [
  3834.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3835.     ("parameter",       ctypes.c_int),
  3836.     ("value",       ctypes.c_double),] )
  3837.  
  3838. dJointAddPistonForce = _rpythonic_function_(        "dJointAddPistonForce", ctypes.c_void_p, [
  3839.     ("joint",       ctypes.POINTER(dxJoint)),
  3840.     ("force",       ctypes.c_double),] )
  3841.  
  3842. dJointSetFixed = _rpythonic_function_(      "dJointSetFixed", ctypes.c_void_p, [
  3843.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3844.  
  3845. dJointSetFixedParam = _rpythonic_function_(     "dJointSetFixedParam", ctypes.c_void_p, [
  3846.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3847.     ("parameter",       ctypes.c_int),
  3848.     ("value",       ctypes.c_double),] )
  3849.  
  3850. dJointSetAMotorNumAxes = _rpythonic_function_(      "dJointSetAMotorNumAxes", ctypes.c_void_p, [
  3851.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3852.     ("num",     ctypes.c_int),] )
  3853.  
  3854. dJointSetAMotorAxis = _rpythonic_function_(     "dJointSetAMotorAxis", ctypes.c_void_p, [
  3855.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3856.     ("anum",        ctypes.c_int),
  3857.     ("rel",     ctypes.c_int),
  3858.     ("x",       ctypes.c_double),
  3859.     ("y",       ctypes.c_double),
  3860.     ("z",       ctypes.c_double),] )
  3861.  
  3862. dJointSetAMotorAngle = _rpythonic_function_(        "dJointSetAMotorAngle", ctypes.c_void_p, [
  3863.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3864.     ("anum",        ctypes.c_int),
  3865.     ("angle",       ctypes.c_double),] )
  3866.  
  3867. dJointSetAMotorParam = _rpythonic_function_(        "dJointSetAMotorParam", ctypes.c_void_p, [
  3868.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3869.     ("parameter",       ctypes.c_int),
  3870.     ("value",       ctypes.c_double),] )
  3871.  
  3872. dJointSetAMotorMode = _rpythonic_function_(     "dJointSetAMotorMode", ctypes.c_void_p, [
  3873.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3874.     ("mode",        ctypes.c_int),] )
  3875.  
  3876. dJointAddAMotorTorques = _rpythonic_function_(      "dJointAddAMotorTorques", ctypes.c_void_p, [
  3877.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3878.     ("torque1",     ctypes.c_double),
  3879.     ("torque2",     ctypes.c_double),
  3880.     ("torque3",     ctypes.c_double),] )
  3881.  
  3882. dJointSetLMotorNumAxes = _rpythonic_function_(      "dJointSetLMotorNumAxes", ctypes.c_void_p, [
  3883.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3884.     ("num",     ctypes.c_int),] )
  3885.  
  3886. dJointSetLMotorAxis = _rpythonic_function_(     "dJointSetLMotorAxis", ctypes.c_void_p, [
  3887.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3888.     ("anum",        ctypes.c_int),
  3889.     ("rel",     ctypes.c_int),
  3890.     ("x",       ctypes.c_double),
  3891.     ("y",       ctypes.c_double),
  3892.     ("z",       ctypes.c_double),] )
  3893.  
  3894. dJointSetLMotorParam = _rpythonic_function_(        "dJointSetLMotorParam", ctypes.c_void_p, [
  3895.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3896.     ("parameter",       ctypes.c_int),
  3897.     ("value",       ctypes.c_double),] )
  3898.  
  3899. dJointSetPlane2DXParam = _rpythonic_function_(      "dJointSetPlane2DXParam", ctypes.c_void_p, [
  3900.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3901.     ("parameter",       ctypes.c_int),
  3902.     ("value",       ctypes.c_double),] )
  3903.  
  3904. dJointSetPlane2DYParam = _rpythonic_function_(      "dJointSetPlane2DYParam", ctypes.c_void_p, [
  3905.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3906.     ("parameter",       ctypes.c_int),
  3907.     ("value",       ctypes.c_double),] )
  3908.  
  3909. dJointSetPlane2DAngleParam = _rpythonic_function_(      "dJointSetPlane2DAngleParam", ctypes.c_void_p, [
  3910.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3911.     ("parameter",       ctypes.c_int),
  3912.     ("value",       ctypes.c_double),] )
  3913.  
  3914. dJointGetBallAnchor = _rpythonic_function_(     "dJointGetBallAnchor", ctypes.c_void_p, [
  3915.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3916.     ("result",      ( ctypes.c_double * 4 )),] )
  3917.  
  3918. dJointGetBallAnchor2 = _rpythonic_function_(        "dJointGetBallAnchor2", ctypes.c_void_p, [
  3919.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3920.     ("result",      ( ctypes.c_double * 4 )),] )
  3921.  
  3922. dJointGetBallParam = _rpythonic_function_(      "dJointGetBallParam", ctypes.c_double, [
  3923.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3924.     ("parameter",       ctypes.c_int),] )
  3925.  
  3926. dJointGetHingeAnchor = _rpythonic_function_(        "dJointGetHingeAnchor", ctypes.c_void_p, [
  3927.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3928.     ("result",      ( ctypes.c_double * 4 )),] )
  3929.  
  3930. dJointGetHingeAnchor2 = _rpythonic_function_(       "dJointGetHingeAnchor2", ctypes.c_void_p, [
  3931.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3932.     ("result",      ( ctypes.c_double * 4 )),] )
  3933.  
  3934. dJointGetHingeAxis = _rpythonic_function_(      "dJointGetHingeAxis", ctypes.c_void_p, [
  3935.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3936.     ("result",      ( ctypes.c_double * 4 )),] )
  3937.  
  3938. dJointGetHingeParam = _rpythonic_function_(     "dJointGetHingeParam", ctypes.c_double, [
  3939.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3940.     ("parameter",       ctypes.c_int),] )
  3941.  
  3942. dJointGetHingeAngle = _rpythonic_function_(     "dJointGetHingeAngle", ctypes.c_double, [
  3943.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3944.  
  3945. dJointGetHingeAngleRate = _rpythonic_function_(     "dJointGetHingeAngleRate", ctypes.c_double, [
  3946.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3947.  
  3948. dJointGetSliderPosition = _rpythonic_function_(     "dJointGetSliderPosition", ctypes.c_double, [
  3949.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3950.  
  3951. dJointGetSliderPositionRate = _rpythonic_function_(     "dJointGetSliderPositionRate", ctypes.c_double, [
  3952.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3953.  
  3954. dJointGetSliderAxis = _rpythonic_function_(     "dJointGetSliderAxis", ctypes.c_void_p, [
  3955.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3956.     ("result",      ( ctypes.c_double * 4 )),] )
  3957.  
  3958. dJointGetSliderParam = _rpythonic_function_(        "dJointGetSliderParam", ctypes.c_double, [
  3959.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3960.     ("parameter",       ctypes.c_int),] )
  3961.  
  3962. dJointGetHinge2Anchor = _rpythonic_function_(       "dJointGetHinge2Anchor", ctypes.c_void_p, [
  3963.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3964.     ("result",      ( ctypes.c_double * 4 )),] )
  3965.  
  3966. dJointGetHinge2Anchor2 = _rpythonic_function_(      "dJointGetHinge2Anchor2", ctypes.c_void_p, [
  3967.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3968.     ("result",      ( ctypes.c_double * 4 )),] )
  3969.  
  3970. dJointGetHinge2Axis1 = _rpythonic_function_(        "dJointGetHinge2Axis1", ctypes.c_void_p, [
  3971.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3972.     ("result",      ( ctypes.c_double * 4 )),] )
  3973.  
  3974. dJointGetHinge2Axis2 = _rpythonic_function_(        "dJointGetHinge2Axis2", ctypes.c_void_p, [
  3975.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3976.     ("result",      ( ctypes.c_double * 4 )),] )
  3977.  
  3978. dJointGetHinge2Param = _rpythonic_function_(        "dJointGetHinge2Param", ctypes.c_double, [
  3979.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3980.     ("parameter",       ctypes.c_int),] )
  3981.  
  3982. dJointGetHinge2Angle1 = _rpythonic_function_(       "dJointGetHinge2Angle1", ctypes.c_double, [
  3983.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3984.  
  3985. dJointGetHinge2Angle1Rate = _rpythonic_function_(       "dJointGetHinge2Angle1Rate", ctypes.c_double, [
  3986.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3987.  
  3988. dJointGetHinge2Angle2Rate = _rpythonic_function_(       "dJointGetHinge2Angle2Rate", ctypes.c_double, [
  3989.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  3990.  
  3991. dJointGetUniversalAnchor = _rpythonic_function_(        "dJointGetUniversalAnchor", ctypes.c_void_p, [
  3992.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3993.     ("result",      ( ctypes.c_double * 4 )),] )
  3994.  
  3995. dJointGetUniversalAnchor2 = _rpythonic_function_(       "dJointGetUniversalAnchor2", ctypes.c_void_p, [
  3996.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  3997.     ("result",      ( ctypes.c_double * 4 )),] )
  3998.  
  3999. dJointGetUniversalAxis1 = _rpythonic_function_(     "dJointGetUniversalAxis1", ctypes.c_void_p, [
  4000.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4001.     ("result",      ( ctypes.c_double * 4 )),] )
  4002.  
  4003. dJointGetUniversalAxis2 = _rpythonic_function_(     "dJointGetUniversalAxis2", ctypes.c_void_p, [
  4004.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4005.     ("result",      ( ctypes.c_double * 4 )),] )
  4006.  
  4007. dJointGetUniversalParam = _rpythonic_function_(     "dJointGetUniversalParam", ctypes.c_double, [
  4008.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4009.     ("parameter",       ctypes.c_int),] )
  4010.  
  4011. dJointGetUniversalAngles = _rpythonic_function_(        "dJointGetUniversalAngles", ctypes.c_void_p, [
  4012.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4013.     ("angle1",      ctypes.POINTER(ctypes.c_double)),
  4014.     ("angle2",      ctypes.POINTER(ctypes.c_double)),] )
  4015.  
  4016. dJointGetUniversalAngle1 = _rpythonic_function_(        "dJointGetUniversalAngle1", ctypes.c_double, [
  4017.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4018.  
  4019. dJointGetUniversalAngle2 = _rpythonic_function_(        "dJointGetUniversalAngle2", ctypes.c_double, [
  4020.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4021.  
  4022. dJointGetUniversalAngle1Rate = _rpythonic_function_(        "dJointGetUniversalAngle1Rate", ctypes.c_double, [
  4023.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4024.  
  4025. dJointGetUniversalAngle2Rate = _rpythonic_function_(        "dJointGetUniversalAngle2Rate", ctypes.c_double, [
  4026.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4027.  
  4028. dJointGetPRAnchor = _rpythonic_function_(       "dJointGetPRAnchor", ctypes.c_void_p, [
  4029.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4030.     ("result",      ( ctypes.c_double * 4 )),] )
  4031.  
  4032. dJointGetPRPosition = _rpythonic_function_(     "dJointGetPRPosition", ctypes.c_double, [
  4033.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4034.  
  4035. dJointGetPRPositionRate = _rpythonic_function_(     "dJointGetPRPositionRate", ctypes.c_double, [
  4036.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4037.  
  4038. dJointGetPRAngle = _rpythonic_function_(        "dJointGetPRAngle", ctypes.c_double, [
  4039.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4040.  
  4041. dJointGetPRAngleRate = _rpythonic_function_(        "dJointGetPRAngleRate", ctypes.c_double, [
  4042.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4043.  
  4044. dJointGetPRAxis1 = _rpythonic_function_(        "dJointGetPRAxis1", ctypes.c_void_p, [
  4045.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4046.     ("result",      ( ctypes.c_double * 4 )),] )
  4047.  
  4048. dJointGetPRAxis2 = _rpythonic_function_(        "dJointGetPRAxis2", ctypes.c_void_p, [
  4049.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4050.     ("result",      ( ctypes.c_double * 4 )),] )
  4051.  
  4052. dJointGetPRParam = _rpythonic_function_(        "dJointGetPRParam", ctypes.c_double, [
  4053.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4054.     ("parameter",       ctypes.c_int),] )
  4055.  
  4056. dJointGetPUAnchor = _rpythonic_function_(       "dJointGetPUAnchor", ctypes.c_void_p, [
  4057.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4058.     ("result",      ( ctypes.c_double * 4 )),] )
  4059.  
  4060. dJointGetPUPosition = _rpythonic_function_(     "dJointGetPUPosition", ctypes.c_double, [
  4061.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4062.  
  4063. dJointGetPUPositionRate = _rpythonic_function_(     "dJointGetPUPositionRate", ctypes.c_double, [
  4064.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4065.  
  4066. dJointGetPUAxis1 = _rpythonic_function_(        "dJointGetPUAxis1", ctypes.c_void_p, [
  4067.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4068.     ("result",      ( ctypes.c_double * 4 )),] )
  4069.  
  4070. dJointGetPUAxis2 = _rpythonic_function_(        "dJointGetPUAxis2", ctypes.c_void_p, [
  4071.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4072.     ("result",      ( ctypes.c_double * 4 )),] )
  4073.  
  4074. dJointGetPUAxis3 = _rpythonic_function_(        "dJointGetPUAxis3", ctypes.c_void_p, [
  4075.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4076.     ("result",      ( ctypes.c_double * 4 )),] )
  4077.  
  4078. dJointGetPUAxisP = _rpythonic_function_(        "dJointGetPUAxisP", ctypes.c_void_p, [
  4079.     ("C_id",        ctypes.POINTER(dxJoint)),
  4080.     ("result",      ( ctypes.c_double * 4 )),] )
  4081.  
  4082. dJointGetPUAngles = _rpythonic_function_(       "dJointGetPUAngles", ctypes.c_void_p, [
  4083.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4084.     ("angle1",      ctypes.POINTER(ctypes.c_double)),
  4085.     ("angle2",      ctypes.POINTER(ctypes.c_double)),] )
  4086.  
  4087. dJointGetPUAngle1 = _rpythonic_function_(       "dJointGetPUAngle1", ctypes.c_double, [
  4088.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4089.  
  4090. dJointGetPUAngle1Rate = _rpythonic_function_(       "dJointGetPUAngle1Rate", ctypes.c_double, [
  4091.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4092.  
  4093. dJointGetPUAngle2 = _rpythonic_function_(       "dJointGetPUAngle2", ctypes.c_double, [
  4094.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4095.  
  4096. dJointGetPUAngle2Rate = _rpythonic_function_(       "dJointGetPUAngle2Rate", ctypes.c_double, [
  4097.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4098.  
  4099. dJointGetPUParam = _rpythonic_function_(        "dJointGetPUParam", ctypes.c_double, [
  4100.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4101.     ("parameter",       ctypes.c_int),] )
  4102.  
  4103. dJointGetPistonPosition = _rpythonic_function_(     "dJointGetPistonPosition", ctypes.c_double, [
  4104.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4105.  
  4106. dJointGetPistonPositionRate = _rpythonic_function_(     "dJointGetPistonPositionRate", ctypes.c_double, [
  4107.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4108.  
  4109. dJointGetPistonAngle = _rpythonic_function_(        "dJointGetPistonAngle", ctypes.c_double, [
  4110.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4111.  
  4112. dJointGetPistonAngleRate = _rpythonic_function_(        "dJointGetPistonAngleRate", ctypes.c_double, [
  4113.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4114.  
  4115. dJointGetPistonAnchor = _rpythonic_function_(       "dJointGetPistonAnchor", ctypes.c_void_p, [
  4116.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4117.     ("result",      ( ctypes.c_double * 4 )),] )
  4118.  
  4119. dJointGetPistonAnchor2 = _rpythonic_function_(      "dJointGetPistonAnchor2", ctypes.c_void_p, [
  4120.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4121.     ("result",      ( ctypes.c_double * 4 )),] )
  4122.  
  4123. dJointGetPistonAxis = _rpythonic_function_(     "dJointGetPistonAxis", ctypes.c_void_p, [
  4124.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4125.     ("result",      ( ctypes.c_double * 4 )),] )
  4126.  
  4127. dJointGetPistonParam = _rpythonic_function_(        "dJointGetPistonParam", ctypes.c_double, [
  4128.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4129.     ("parameter",       ctypes.c_int),] )
  4130.  
  4131. dJointGetAMotorNumAxes = _rpythonic_function_(      "dJointGetAMotorNumAxes", ctypes.c_int, [
  4132.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4133.  
  4134. dJointGetAMotorAxis = _rpythonic_function_(     "dJointGetAMotorAxis", ctypes.c_void_p, [
  4135.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4136.     ("anum",        ctypes.c_int),
  4137.     ("result",      ( ctypes.c_double * 4 )),] )
  4138.  
  4139. dJointGetAMotorAxisRel = _rpythonic_function_(      "dJointGetAMotorAxisRel", ctypes.c_int, [
  4140.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4141.     ("anum",        ctypes.c_int),] )
  4142.  
  4143. dJointGetAMotorAngle = _rpythonic_function_(        "dJointGetAMotorAngle", ctypes.c_double, [
  4144.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4145.     ("anum",        ctypes.c_int),] )
  4146.  
  4147. dJointGetAMotorAngleRate = _rpythonic_function_(        "dJointGetAMotorAngleRate", ctypes.c_double, [
  4148.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4149.     ("anum",        ctypes.c_int),] )
  4150.  
  4151. dJointGetAMotorParam = _rpythonic_function_(        "dJointGetAMotorParam", ctypes.c_double, [
  4152.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4153.     ("parameter",       ctypes.c_int),] )
  4154.  
  4155. dJointGetAMotorMode = _rpythonic_function_(     "dJointGetAMotorMode", ctypes.c_int, [
  4156.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4157.  
  4158. dJointGetLMotorNumAxes = _rpythonic_function_(      "dJointGetLMotorNumAxes", ctypes.c_int, [
  4159.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4160.  
  4161. dJointGetLMotorAxis = _rpythonic_function_(     "dJointGetLMotorAxis", ctypes.c_void_p, [
  4162.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4163.     ("anum",        ctypes.c_int),
  4164.     ("result",      ( ctypes.c_double * 4 )),] )
  4165.  
  4166. dJointGetLMotorParam = _rpythonic_function_(        "dJointGetLMotorParam", ctypes.c_double, [
  4167.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4168.     ("parameter",       ctypes.c_int),] )
  4169.  
  4170. dJointGetFixedParam = _rpythonic_function_(     "dJointGetFixedParam", ctypes.c_double, [
  4171.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4172.     ("parameter",       ctypes.c_int),] )
  4173.  
  4174. dConnectingJoint = _rpythonic_function_(        "dConnectingJoint", ctypes.POINTER(ctypes.c_void_p), [
  4175.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4176.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4177.  
  4178. dConnectingJointList = _rpythonic_function_(        "dConnectingJointList", ctypes.c_int, [
  4179.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4180.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4181.     ("none",        ctypes.POINTER(ctypes.POINTER(ctypes.c_void_p))),] )
  4182.  
  4183. dAreConnected = _rpythonic_function_(       "dAreConnected", ctypes.c_int, [
  4184.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4185.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4186.  
  4187. dAreConnectedExcluding = _rpythonic_function_(      "dAreConnectedExcluding", ctypes.c_int, [
  4188.     ("body1",       ctypes.POINTER(dxBody)),
  4189.     ("body2",       ctypes.POINTER(dxBody)),
  4190.     ("joint_type",      ctypes.c_int),] )
  4191.  
  4192. dNearCallback = _rpythonic_function_(       "dNearCallback", ctypes.c_void_p, [
  4193.     ("data",        ctypes.POINTER(ctypes.c_void_p)),
  4194.     ("o1",      ctypes.POINTER(dxGeom)),
  4195.     ("o2",      ctypes.POINTER(dxGeom)),] )
  4196.  
  4197. dSimpleSpaceCreate = _rpythonic_function_(      "dSimpleSpaceCreate", ctypes.POINTER(ctypes.c_void_p), [
  4198.     ("space",       ctypes.POINTER(dxSpace)),] )
  4199.  
  4200. dHashSpaceCreate = _rpythonic_function_(        "dHashSpaceCreate", ctypes.POINTER(ctypes.c_void_p), [
  4201.     ("space",       ctypes.POINTER(dxSpace)),] )
  4202.  
  4203. dQuadTreeSpaceCreate = _rpythonic_function_(        "dQuadTreeSpaceCreate", ctypes.POINTER(ctypes.c_void_p), [
  4204.     ("space",       ctypes.POINTER(dxSpace)),
  4205.     ("Center",      ( ctypes.c_double * 4 )),
  4206.     ("Extents",     ( ctypes.c_double * 4 )),
  4207.     ("Depth",       ctypes.c_int),] )
  4208.  
  4209. dSweepAndPruneSpaceCreate = _rpythonic_function_(       "dSweepAndPruneSpaceCreate", ctypes.POINTER(ctypes.c_void_p), [
  4210.     ("space",       ctypes.POINTER(dxSpace)),
  4211.     ("axisorder",       ctypes.c_int),] )
  4212.  
  4213. dSpaceDestroy = _rpythonic_function_(       "dSpaceDestroy", ctypes.c_void_p, [
  4214.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4215.  
  4216. dHashSpaceSetLevels = _rpythonic_function_(     "dHashSpaceSetLevels", ctypes.c_void_p, [
  4217.     ("space",       ctypes.POINTER(dxSpace)),
  4218.     ("minlevel",        ctypes.c_int),
  4219.     ("maxlevel",        ctypes.c_int),] )
  4220.  
  4221. dHashSpaceGetLevels = _rpythonic_function_(     "dHashSpaceGetLevels", ctypes.c_void_p, [
  4222.     ("space",       ctypes.POINTER(dxSpace)),
  4223.     ("minlevel",        ctypes.POINTER(ctypes.c_int)),
  4224.     ("maxlevel",        ctypes.POINTER(ctypes.c_int)),] )
  4225.  
  4226. dSpaceSetCleanup = _rpythonic_function_(        "dSpaceSetCleanup", ctypes.c_void_p, [
  4227.     ("space",       ctypes.POINTER(dxSpace)),
  4228.     ("mode",        ctypes.c_int),] )
  4229.  
  4230. dSpaceGetCleanup = _rpythonic_function_(        "dSpaceGetCleanup", ctypes.c_int, [
  4231.     ("space",       ctypes.POINTER(dxSpace)),] )
  4232.  
  4233. dSpaceSetSublevel = _rpythonic_function_(       "dSpaceSetSublevel", ctypes.c_void_p, [
  4234.     ("space",       ctypes.POINTER(dxSpace)),
  4235.     ("sublevel",        ctypes.c_int),] )
  4236.  
  4237. dSpaceGetSublevel = _rpythonic_function_(       "dSpaceGetSublevel", ctypes.c_int, [
  4238.     ("space",       ctypes.POINTER(dxSpace)),] )
  4239.  
  4240. dSpaceSetManualCleanup = _rpythonic_function_(      "dSpaceSetManualCleanup", ctypes.c_void_p, [
  4241.     ("space",       ctypes.POINTER(dxSpace)),
  4242.     ("mode",        ctypes.c_int),] )
  4243.  
  4244. dSpaceGetManualCleanup = _rpythonic_function_(      "dSpaceGetManualCleanup", ctypes.c_int, [
  4245.     ("space",       ctypes.POINTER(dxSpace)),] )
  4246.  
  4247. dSpaceAdd = _rpythonic_function_(       "dSpaceAdd", ctypes.c_void_p, [
  4248.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4249.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4250.  
  4251. dSpaceRemove = _rpythonic_function_(        "dSpaceRemove", ctypes.c_void_p, [
  4252.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4253.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4254.  
  4255. dSpaceQuery = _rpythonic_function_(     "dSpaceQuery", ctypes.c_int, [
  4256.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4257.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4258.  
  4259. dSpaceClean = _rpythonic_function_(     "dSpaceClean", ctypes.c_void_p, [
  4260.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4261.  
  4262. dSpaceGetNumGeoms = _rpythonic_function_(       "dSpaceGetNumGeoms", ctypes.c_int, [
  4263.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4264.  
  4265. dSpaceGetGeom = _rpythonic_function_(       "dSpaceGetGeom", ctypes.POINTER(ctypes.c_void_p), [
  4266.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4267.     ("i",       ctypes.c_int),] )
  4268.  
  4269. dSpaceGetClass = _rpythonic_function_(      "dSpaceGetClass", ctypes.c_int, [
  4270.     ("space",       ctypes.POINTER(dxSpace)),] )
  4271.  
  4272. dGeomDestroy = _rpythonic_function_(        "dGeomDestroy", ctypes.c_void_p, [
  4273.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4274.  
  4275. dGeomSetData = _rpythonic_function_(        "dGeomSetData", ctypes.c_void_p, [
  4276.     ("geom",        ctypes.POINTER(dxGeom)),
  4277.     ("data",        ctypes.POINTER(ctypes.c_void_p)),] )
  4278.  
  4279. dGeomGetData = _rpythonic_function_(        "dGeomGetData", ctypes.POINTER(ctypes.c_void_p), [
  4280.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4281.  
  4282. dGeomSetBody = _rpythonic_function_(        "dGeomSetBody", ctypes.c_void_p, [
  4283.     ("geom",        ctypes.POINTER(dxGeom)),
  4284.     ("body",        ctypes.POINTER(dxBody)),] )
  4285.  
  4286. dGeomGetBody = _rpythonic_function_(        "dGeomGetBody", ctypes.POINTER(ctypes.c_void_p), [
  4287.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4288.  
  4289. dGeomSetPosition = _rpythonic_function_(        "dGeomSetPosition", ctypes.c_void_p, [
  4290.     ("geom",        ctypes.POINTER(dxGeom)),
  4291.     ("x",       ctypes.c_double),
  4292.     ("y",       ctypes.c_double),
  4293.     ("z",       ctypes.c_double),] )
  4294.  
  4295. dGeomSetRotation = _rpythonic_function_(        "dGeomSetRotation", ctypes.c_void_p, [
  4296.     ("geom",        ctypes.POINTER(dxGeom)),
  4297.     ("R",       ( ctypes.c_double * 12 )),] )
  4298.  
  4299. dGeomSetQuaternion = _rpythonic_function_(      "dGeomSetQuaternion", ctypes.c_void_p, [
  4300.     ("geom",        ctypes.POINTER(dxGeom)),
  4301.     ("Q",       ( ctypes.c_double * 4 )),] )
  4302.  
  4303. dGeomGetPosition = _rpythonic_function_(        "dGeomGetPosition", ctypes.POINTER(ctypes.c_double), [
  4304.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4305.  
  4306. dGeomCopyPosition = _rpythonic_function_(       "dGeomCopyPosition", ctypes.c_void_p, [
  4307.     ("geom",        ctypes.POINTER(dxGeom)),
  4308.     ("pos",     ( ctypes.c_double * 4 )),] )
  4309.  
  4310. dGeomGetRotation = _rpythonic_function_(        "dGeomGetRotation", ctypes.POINTER(ctypes.c_double), [
  4311.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4312.  
  4313. dGeomCopyRotation = _rpythonic_function_(       "dGeomCopyRotation", ctypes.c_void_p, [
  4314.     ("geom",        ctypes.POINTER(dxGeom)),
  4315.     ("R",       ( ctypes.c_double * 12 )),] )
  4316.  
  4317. dGeomGetQuaternion = _rpythonic_function_(      "dGeomGetQuaternion", ctypes.c_void_p, [
  4318.     ("geom",        ctypes.POINTER(dxGeom)),
  4319.     ("result",      ( ctypes.c_double * 4 )),] )
  4320.  
  4321. dGeomGetAABB = _rpythonic_function_(        "dGeomGetAABB", ctypes.c_void_p, [
  4322.     ("geom",        ctypes.POINTER(dxGeom)),
  4323.     ("aabb",        ( ctypes.c_double * 6 )),] )
  4324.  
  4325. dGeomIsSpace = _rpythonic_function_(        "dGeomIsSpace", ctypes.c_int, [
  4326.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4327.  
  4328. dGeomGetSpace = _rpythonic_function_(       "dGeomGetSpace", ctypes.POINTER(ctypes.c_void_p), [
  4329.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4330.  
  4331. dGeomGetClass = _rpythonic_function_(       "dGeomGetClass", ctypes.c_int, [
  4332.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4333.  
  4334. dGeomSetCategoryBits = _rpythonic_function_(        "dGeomSetCategoryBits", ctypes.c_void_p, [
  4335.     ("geom",        ctypes.POINTER(dxGeom)),
  4336.     ("bits",        ctypes.c_ulong),] )
  4337.  
  4338. dGeomSetCollideBits = _rpythonic_function_(     "dGeomSetCollideBits", ctypes.c_void_p, [
  4339.     ("geom",        ctypes.POINTER(dxGeom)),
  4340.     ("bits",        ctypes.c_ulong),] )
  4341.  
  4342. dGeomGetCategoryBits = _rpythonic_function_(        "dGeomGetCategoryBits", ctypes.c_ulong, [
  4343.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4344.  
  4345. dGeomGetCollideBits = _rpythonic_function_(     "dGeomGetCollideBits", ctypes.c_ulong, [
  4346.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4347.  
  4348. dGeomEnable = _rpythonic_function_(     "dGeomEnable", ctypes.c_void_p, [
  4349.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4350.  
  4351. dGeomDisable = _rpythonic_function_(        "dGeomDisable", ctypes.c_void_p, [
  4352.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4353.  
  4354. dGeomIsEnabled = _rpythonic_function_(      "dGeomIsEnabled", ctypes.c_int, [
  4355.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4356.  
  4357. dGeomSetOffsetPosition = _rpythonic_function_(      "dGeomSetOffsetPosition", ctypes.c_void_p, [
  4358.     ("geom",        ctypes.POINTER(dxGeom)),
  4359.     ("x",       ctypes.c_double),
  4360.     ("y",       ctypes.c_double),
  4361.     ("z",       ctypes.c_double),] )
  4362.  
  4363. dGeomSetOffsetRotation = _rpythonic_function_(      "dGeomSetOffsetRotation", ctypes.c_void_p, [
  4364.     ("geom",        ctypes.POINTER(dxGeom)),
  4365.     ("R",       ( ctypes.c_double * 12 )),] )
  4366.  
  4367. dGeomSetOffsetQuaternion = _rpythonic_function_(        "dGeomSetOffsetQuaternion", ctypes.c_void_p, [
  4368.     ("geom",        ctypes.POINTER(dxGeom)),
  4369.     ("Q",       ( ctypes.c_double * 4 )),] )
  4370.  
  4371. dGeomSetOffsetWorldPosition = _rpythonic_function_(     "dGeomSetOffsetWorldPosition", ctypes.c_void_p, [
  4372.     ("geom",        ctypes.POINTER(dxGeom)),
  4373.     ("x",       ctypes.c_double),
  4374.     ("y",       ctypes.c_double),
  4375.     ("z",       ctypes.c_double),] )
  4376.  
  4377. dGeomSetOffsetWorldRotation = _rpythonic_function_(     "dGeomSetOffsetWorldRotation", ctypes.c_void_p, [
  4378.     ("geom",        ctypes.POINTER(dxGeom)),
  4379.     ("R",       ( ctypes.c_double * 12 )),] )
  4380.  
  4381. dGeomSetOffsetWorldQuaternion = _rpythonic_function_(       "dGeomSetOffsetWorldQuaternion", ctypes.c_void_p, [
  4382.     ("geom",        ctypes.POINTER(dxGeom)),
  4383.     ("none",        ( ctypes.c_double * 4 )),] )
  4384.  
  4385. dGeomClearOffset = _rpythonic_function_(        "dGeomClearOffset", ctypes.c_void_p, [
  4386.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4387.  
  4388. dGeomIsOffset = _rpythonic_function_(       "dGeomIsOffset", ctypes.c_int, [
  4389.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4390.  
  4391. dGeomGetOffsetPosition = _rpythonic_function_(      "dGeomGetOffsetPosition", ctypes.POINTER(ctypes.c_double), [
  4392.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4393.  
  4394. dGeomCopyOffsetPosition = _rpythonic_function_(     "dGeomCopyOffsetPosition", ctypes.c_void_p, [
  4395.     ("geom",        ctypes.POINTER(dxGeom)),
  4396.     ("pos",     ( ctypes.c_double * 4 )),] )
  4397.  
  4398. dGeomGetOffsetRotation = _rpythonic_function_(      "dGeomGetOffsetRotation", ctypes.POINTER(ctypes.c_double), [
  4399.     ("geom",        ctypes.POINTER(dxGeom)),] )
  4400.  
  4401. dGeomCopyOffsetRotation = _rpythonic_function_(     "dGeomCopyOffsetRotation", ctypes.c_void_p, [
  4402.     ("geom",        ctypes.POINTER(dxGeom)),
  4403.     ("R",       ( ctypes.c_double * 12 )),] )
  4404.  
  4405. dGeomGetOffsetQuaternion = _rpythonic_function_(        "dGeomGetOffsetQuaternion", ctypes.c_void_p, [
  4406.     ("geom",        ctypes.POINTER(dxGeom)),
  4407.     ("result",      ( ctypes.c_double * 4 )),] )
  4408.  
  4409. dCollide = _rpythonic_function_(        "dCollide", ctypes.c_int, [
  4410.     ("o1",      ctypes.POINTER(dxGeom)),
  4411.     ("o2",      ctypes.POINTER(dxGeom)),
  4412.     ("flags",       ctypes.c_int),
  4413.     ("contact",     ctypes.POINTER(dContactGeom)),
  4414.     ("skip",        ctypes.c_int),] )
  4415.  
  4416. dSpaceCollide = _rpythonic_function_(       "dSpaceCollide", ctypes.c_void_p, [
  4417.     ("space",       ctypes.POINTER(dxSpace)),
  4418.     ("data",        ctypes.POINTER(ctypes.c_void_p)),
  4419.     ("callback",        ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),)),] )
  4420.  
  4421. dSpaceCollide2 = _rpythonic_function_(      "dSpaceCollide2", ctypes.c_void_p, [
  4422.     ("space1",      ctypes.POINTER(dxGeom)),
  4423.     ("space2",      ctypes.POINTER(dxGeom)),
  4424.     ("data",        ctypes.POINTER(ctypes.c_void_p)),
  4425.     ("callback",        ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(ctypes.c_void_p),ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),)),] )
  4426.  
  4427. dCreateSphere = _rpythonic_function_(       "dCreateSphere", ctypes.POINTER(ctypes.c_void_p), [
  4428.     ("space",       ctypes.POINTER(dxSpace)),
  4429.     ("radius",      ctypes.c_double),] )
  4430.  
  4431. dGeomSphereSetRadius = _rpythonic_function_(        "dGeomSphereSetRadius", ctypes.c_void_p, [
  4432.     ("sphere",      ctypes.POINTER(dxGeom)),
  4433.     ("radius",      ctypes.c_double),] )
  4434.  
  4435. dGeomSphereGetRadius = _rpythonic_function_(        "dGeomSphereGetRadius", ctypes.c_double, [
  4436.     ("sphere",      ctypes.POINTER(dxGeom)),] )
  4437.  
  4438. dGeomSpherePointDepth = _rpythonic_function_(       "dGeomSpherePointDepth", ctypes.c_double, [
  4439.     ("sphere",      ctypes.POINTER(dxGeom)),
  4440.     ("x",       ctypes.c_double),
  4441.     ("y",       ctypes.c_double),
  4442.     ("z",       ctypes.c_double),] )
  4443.  
  4444. dCreateConvex = _rpythonic_function_(       "dCreateConvex", ctypes.POINTER(ctypes.c_void_p), [
  4445.     ("space",       ctypes.POINTER(dxSpace)),
  4446.     ("_planes",     ctypes.POINTER(ctypes.c_double)),
  4447.     ("_planecount",     ctypes.c_uint),
  4448.     ("_points",     ctypes.POINTER(ctypes.c_double)),
  4449.     ("_pointcount",     ctypes.c_uint),
  4450.     ("_polygons",       ctypes.POINTER(ctypes.c_uint)),] )
  4451.  
  4452. dGeomSetConvex = _rpythonic_function_(      "dGeomSetConvex", ctypes.c_void_p, [
  4453.     ("g",       ctypes.POINTER(dxGeom)),
  4454.     ("_planes",     ctypes.POINTER(ctypes.c_double)),
  4455.     ("_count",      ctypes.c_uint),
  4456.     ("_points",     ctypes.POINTER(ctypes.c_double)),
  4457.     ("_pointcount",     ctypes.c_uint),
  4458.     ("_polygons",       ctypes.POINTER(ctypes.c_uint)),] )
  4459.  
  4460. dCreateBox = _rpythonic_function_(      "dCreateBox", ctypes.POINTER(ctypes.c_void_p), [
  4461.     ("space",       ctypes.POINTER(dxSpace)),
  4462.     ("lx",      ctypes.c_double),
  4463.     ("ly",      ctypes.c_double),
  4464.     ("lz",      ctypes.c_double),] )
  4465.  
  4466. dGeomBoxSetLengths = _rpythonic_function_(      "dGeomBoxSetLengths", ctypes.c_void_p, [
  4467.     ("box",     ctypes.POINTER(dxGeom)),
  4468.     ("lx",      ctypes.c_double),
  4469.     ("ly",      ctypes.c_double),
  4470.     ("lz",      ctypes.c_double),] )
  4471.  
  4472. dGeomBoxGetLengths = _rpythonic_function_(      "dGeomBoxGetLengths", ctypes.c_void_p, [
  4473.     ("box",     ctypes.POINTER(dxGeom)),
  4474.     ("result",      ( ctypes.c_double * 4 )),] )
  4475.  
  4476. dGeomBoxPointDepth = _rpythonic_function_(      "dGeomBoxPointDepth", ctypes.c_double, [
  4477.     ("box",     ctypes.POINTER(dxGeom)),
  4478.     ("x",       ctypes.c_double),
  4479.     ("y",       ctypes.c_double),
  4480.     ("z",       ctypes.c_double),] )
  4481.  
  4482. dCreatePlane = _rpythonic_function_(        "dCreatePlane", ctypes.POINTER(ctypes.c_void_p), [
  4483.     ("space",       ctypes.POINTER(dxSpace)),
  4484.     ("a",       ctypes.c_double),
  4485.     ("b",       ctypes.c_double),
  4486.     ("c",       ctypes.c_double),
  4487.     ("d",       ctypes.c_double),] )
  4488.  
  4489. dGeomPlaneSetParams = _rpythonic_function_(     "dGeomPlaneSetParams", ctypes.c_void_p, [
  4490.     ("plane",       ctypes.POINTER(dxGeom)),
  4491.     ("a",       ctypes.c_double),
  4492.     ("b",       ctypes.c_double),
  4493.     ("c",       ctypes.c_double),
  4494.     ("d",       ctypes.c_double),] )
  4495.  
  4496. dGeomPlaneGetParams = _rpythonic_function_(     "dGeomPlaneGetParams", ctypes.c_void_p, [
  4497.     ("plane",       ctypes.POINTER(dxGeom)),
  4498.     ("result",      ( ctypes.c_double * 4 )),] )
  4499.  
  4500. dGeomPlanePointDepth = _rpythonic_function_(        "dGeomPlanePointDepth", ctypes.c_double, [
  4501.     ("plane",       ctypes.POINTER(dxGeom)),
  4502.     ("x",       ctypes.c_double),
  4503.     ("y",       ctypes.c_double),
  4504.     ("z",       ctypes.c_double),] )
  4505.  
  4506. dCreateCapsule = _rpythonic_function_(      "dCreateCapsule", ctypes.POINTER(ctypes.c_void_p), [
  4507.     ("space",       ctypes.POINTER(dxSpace)),
  4508.     ("radius",      ctypes.c_double),
  4509.     ("length",      ctypes.c_double),] )
  4510.  
  4511. dGeomCapsuleSetParams = _rpythonic_function_(       "dGeomCapsuleSetParams", ctypes.c_void_p, [
  4512.     ("ccylinder",       ctypes.POINTER(dxGeom)),
  4513.     ("radius",      ctypes.c_double),
  4514.     ("length",      ctypes.c_double),] )
  4515.  
  4516. dGeomCapsuleGetParams = _rpythonic_function_(       "dGeomCapsuleGetParams", ctypes.c_void_p, [
  4517.     ("ccylinder",       ctypes.POINTER(dxGeom)),
  4518.     ("radius",      ctypes.POINTER(ctypes.c_double)),
  4519.     ("length",      ctypes.POINTER(ctypes.c_double)),] )
  4520.  
  4521. dGeomCapsulePointDepth = _rpythonic_function_(      "dGeomCapsulePointDepth", ctypes.c_double, [
  4522.     ("ccylinder",       ctypes.POINTER(dxGeom)),
  4523.     ("x",       ctypes.c_double),
  4524.     ("y",       ctypes.c_double),
  4525.     ("z",       ctypes.c_double),] )
  4526.  
  4527. dCreateCylinder = _rpythonic_function_(     "dCreateCylinder", ctypes.POINTER(ctypes.c_void_p), [
  4528.     ("space",       ctypes.POINTER(dxSpace)),
  4529.     ("radius",      ctypes.c_double),
  4530.     ("length",      ctypes.c_double),] )
  4531.  
  4532. dGeomCylinderSetParams = _rpythonic_function_(      "dGeomCylinderSetParams", ctypes.c_void_p, [
  4533.     ("cylinder",        ctypes.POINTER(dxGeom)),
  4534.     ("radius",      ctypes.c_double),
  4535.     ("length",      ctypes.c_double),] )
  4536.  
  4537. dGeomCylinderGetParams = _rpythonic_function_(      "dGeomCylinderGetParams", ctypes.c_void_p, [
  4538.     ("cylinder",        ctypes.POINTER(dxGeom)),
  4539.     ("radius",      ctypes.POINTER(ctypes.c_double)),
  4540.     ("length",      ctypes.POINTER(ctypes.c_double)),] )
  4541.  
  4542. dCreateRay = _rpythonic_function_(      "dCreateRay", ctypes.POINTER(ctypes.c_void_p), [
  4543.     ("space",       ctypes.POINTER(dxSpace)),
  4544.     ("length",      ctypes.c_double),] )
  4545.  
  4546. dGeomRaySetLength = _rpythonic_function_(       "dGeomRaySetLength", ctypes.c_void_p, [
  4547.     ("ray",     ctypes.POINTER(dxGeom)),
  4548.     ("length",      ctypes.c_double),] )
  4549.  
  4550. dGeomRayGetLength = _rpythonic_function_(       "dGeomRayGetLength", ctypes.c_double, [
  4551.     ("ray",     ctypes.POINTER(dxGeom)),] )
  4552.  
  4553. dGeomRaySet = _rpythonic_function_(     "dGeomRaySet", ctypes.c_void_p, [
  4554.     ("ray",     ctypes.POINTER(dxGeom)),
  4555.     ("px",      ctypes.c_double),
  4556.     ("py",      ctypes.c_double),
  4557.     ("pz",      ctypes.c_double),
  4558.     ("dx",      ctypes.c_double),
  4559.     ("dy",      ctypes.c_double),
  4560.     ("dz",      ctypes.c_double),] )
  4561.  
  4562. dGeomRayGet = _rpythonic_function_(     "dGeomRayGet", ctypes.c_void_p, [
  4563.     ("ray",     ctypes.POINTER(dxGeom)),
  4564.     ("start",       ( ctypes.c_double * 4 )),
  4565.     ("dir",     ( ctypes.c_double * 4 )),] )
  4566.  
  4567. dGeomRaySetParams = _rpythonic_function_(       "dGeomRaySetParams", ctypes.c_void_p, [
  4568.     ("g",       ctypes.POINTER(dxGeom)),
  4569.     ("FirstContact",        ctypes.c_int),
  4570.     ("BackfaceCull",        ctypes.c_int),] )
  4571.  
  4572. dGeomRayGetParams = _rpythonic_function_(       "dGeomRayGetParams", ctypes.c_void_p, [
  4573.     ("g",       ctypes.POINTER(dxGeom)),
  4574.     ("FirstContact",        ctypes.POINTER(ctypes.c_int)),
  4575.     ("BackfaceCull",        ctypes.POINTER(ctypes.c_int)),] )
  4576.  
  4577. dGeomRaySetClosestHit = _rpythonic_function_(       "dGeomRaySetClosestHit", ctypes.c_void_p, [
  4578.     ("g",       ctypes.POINTER(dxGeom)),
  4579.     ("closestHit",      ctypes.c_int),] )
  4580.  
  4581. dGeomRayGetClosestHit = _rpythonic_function_(       "dGeomRayGetClosestHit", ctypes.c_int, [
  4582.     ("g",       ctypes.POINTER(dxGeom)),] )
  4583.  
  4584. dGeomTriMeshDataCreate = _rpythonic_function_(      "dGeomTriMeshDataCreate", ctypes.POINTER(ctypes.c_void_p), [] )
  4585.  
  4586. dGeomTriMeshDataDestroy = _rpythonic_function_(     "dGeomTriMeshDataDestroy", ctypes.c_void_p, [
  4587.     ("g",       ctypes.POINTER(dxTriMeshData)),] )
  4588.  
  4589. dGeomTriMeshDataSet = _rpythonic_function_(     "dGeomTriMeshDataSet", ctypes.c_void_p, [
  4590.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4591.     ("data_id",     ctypes.c_int),
  4592.     ("in_data",     ctypes.POINTER(ctypes.c_void_p)),] )
  4593.  
  4594. dGeomTriMeshDataGet = _rpythonic_function_(     "dGeomTriMeshDataGet", ctypes.POINTER(ctypes.c_void_p), [
  4595.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4596.     ("data_id",     ctypes.c_int),] )
  4597.  
  4598. dGeomTriMeshSetLastTransform = _rpythonic_function_(        "dGeomTriMeshSetLastTransform", ctypes.c_void_p, [
  4599.     ("g",       ctypes.POINTER(dxGeom)),
  4600.     ("last_trans",      ( ctypes.c_double * 16 )),] )
  4601.  
  4602. dGeomTriMeshGetLastTransform = _rpythonic_function_(        "dGeomTriMeshGetLastTransform", ctypes.POINTER(ctypes.c_double), [
  4603.     ("g",       ctypes.POINTER(dxGeom)),] )
  4604.  
  4605. dGeomTriMeshDataBuildSingle = _rpythonic_function_(     "dGeomTriMeshDataBuildSingle", ctypes.c_void_p, [
  4606.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4607.     ("Vertices",        ctypes.POINTER(ctypes.c_void_p)),
  4608.     ("VertexStride",        ctypes.c_int),
  4609.     ("VertexCount",     ctypes.c_int),
  4610.     ("Indices",     ctypes.POINTER(ctypes.c_void_p)),
  4611.     ("IndexCount",      ctypes.c_int),
  4612.     ("TriStride",       ctypes.c_int),] )
  4613.  
  4614. dGeomTriMeshDataBuildSingle1 = _rpythonic_function_(        "dGeomTriMeshDataBuildSingle1", ctypes.c_void_p, [
  4615.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4616.     ("Vertices",        ctypes.POINTER(ctypes.c_void_p)),
  4617.     ("VertexStride",        ctypes.c_int),
  4618.     ("VertexCount",     ctypes.c_int),
  4619.     ("Indices",     ctypes.POINTER(ctypes.c_void_p)),
  4620.     ("IndexCount",      ctypes.c_int),
  4621.     ("TriStride",       ctypes.c_int),
  4622.     ("Normals",     ctypes.POINTER(ctypes.c_void_p)),] )
  4623.  
  4624. dGeomTriMeshDataBuildDouble = _rpythonic_function_(     "dGeomTriMeshDataBuildDouble", ctypes.c_void_p, [
  4625.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4626.     ("Vertices",        ctypes.POINTER(ctypes.c_void_p)),
  4627.     ("VertexStride",        ctypes.c_int),
  4628.     ("VertexCount",     ctypes.c_int),
  4629.     ("Indices",     ctypes.POINTER(ctypes.c_void_p)),
  4630.     ("IndexCount",      ctypes.c_int),
  4631.     ("TriStride",       ctypes.c_int),] )
  4632.  
  4633. dGeomTriMeshDataBuildDouble1 = _rpythonic_function_(        "dGeomTriMeshDataBuildDouble1", ctypes.c_void_p, [
  4634.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4635.     ("Vertices",        ctypes.POINTER(ctypes.c_void_p)),
  4636.     ("VertexStride",        ctypes.c_int),
  4637.     ("VertexCount",     ctypes.c_int),
  4638.     ("Indices",     ctypes.POINTER(ctypes.c_void_p)),
  4639.     ("IndexCount",      ctypes.c_int),
  4640.     ("TriStride",       ctypes.c_int),
  4641.     ("Normals",     ctypes.POINTER(ctypes.c_void_p)),] )
  4642.  
  4643. dGeomTriMeshDataBuildSimple = _rpythonic_function_(     "dGeomTriMeshDataBuildSimple", ctypes.c_void_p, [
  4644.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4645.     ("Vertices",        ctypes.POINTER(ctypes.c_double)),
  4646.     ("VertexCount",     ctypes.c_int),
  4647.     ("Indices",     ctypes.POINTER(ctypes.c_uint)),
  4648.     ("IndexCount",      ctypes.c_int),] )
  4649.  
  4650. dGeomTriMeshDataBuildSimple1 = _rpythonic_function_(        "dGeomTriMeshDataBuildSimple1", ctypes.c_void_p, [
  4651.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4652.     ("Vertices",        ctypes.POINTER(ctypes.c_double)),
  4653.     ("VertexCount",     ctypes.c_int),
  4654.     ("Indices",     ctypes.POINTER(ctypes.c_uint)),
  4655.     ("IndexCount",      ctypes.c_int),
  4656.     ("Normals",     ctypes.POINTER(ctypes.c_int)),] )
  4657.  
  4658. dGeomTriMeshDataPreprocess = _rpythonic_function_(      "dGeomTriMeshDataPreprocess", ctypes.c_void_p, [
  4659.     ("g",       ctypes.POINTER(dxTriMeshData)),] )
  4660.  
  4661. dGeomTriMeshDataGetBuffer = _rpythonic_function_(       "dGeomTriMeshDataGetBuffer", ctypes.c_void_p, [
  4662.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4663.     ("buf",     ctypes.POINTER(ctypes.POINTER(ctypes.c_ubyte))),
  4664.     ("bufLen",      ctypes.POINTER(ctypes.c_int)),] )
  4665.  
  4666. dGeomTriMeshDataSetBuffer = _rpythonic_function_(       "dGeomTriMeshDataSetBuffer", ctypes.c_void_p, [
  4667.     ("g",       ctypes.POINTER(dxTriMeshData)),
  4668.     ("buf",     ctypes.POINTER(ctypes.c_ubyte)),] )
  4669.  
  4670. dTriCallback = _rpythonic_function_(        "dTriCallback", ctypes.c_int, [
  4671.     ("TriMesh",     ctypes.POINTER(dxGeom)),
  4672.     ("RefObject",       ctypes.POINTER(dxGeom)),
  4673.     ("TriangleIndex",       ctypes.c_int),] )
  4674.  
  4675. dGeomTriMeshSetCallback = _rpythonic_function_(     "dGeomTriMeshSetCallback", ctypes.c_void_p, [
  4676.     ("g",       ctypes.POINTER(dxGeom)),
  4677.     ("Callback",        ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,)),] )
  4678.  
  4679. dGeomTriMeshGetCallback = _rpythonic_function_(     "dGeomTriMeshGetCallback", ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,), [
  4680.     ("g",       ctypes.POINTER(dxGeom)),] )
  4681.  
  4682. dTriArrayCallback = _rpythonic_function_(       "dTriArrayCallback", ctypes.c_void_p, [
  4683.     ("TriMesh",     ctypes.POINTER(dxGeom)),
  4684.     ("RefObject",       ctypes.POINTER(dxGeom)),
  4685.     ("TriIndices",      ctypes.POINTER(ctypes.c_int)),
  4686.     ("TriCount",        ctypes.c_int),] )
  4687.  
  4688. dGeomTriMeshSetArrayCallback = _rpythonic_function_(        "dGeomTriMeshSetArrayCallback", ctypes.c_void_p, [
  4689.     ("g",       ctypes.POINTER(dxGeom)),
  4690.     ("ArrayCallback",       ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.POINTER(ctypes.c_int),ctypes.c_int,)),] )
  4691.  
  4692. dGeomTriMeshGetArrayCallback = _rpythonic_function_(        "dGeomTriMeshGetArrayCallback", ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.POINTER(ctypes.c_int),ctypes.c_int,), [
  4693.     ("g",       ctypes.POINTER(dxGeom)),] )
  4694.  
  4695. dTriRayCallback = _rpythonic_function_(     "dTriRayCallback", ctypes.c_int, [
  4696.     ("TriMesh",     ctypes.POINTER(dxGeom)),
  4697.     ("Ray",     ctypes.POINTER(dxGeom)),
  4698.     ("TriangleIndex",       ctypes.c_int),
  4699.     ("u",       ctypes.c_double),
  4700.     ("v",       ctypes.c_double),] )
  4701.  
  4702. dGeomTriMeshSetRayCallback = _rpythonic_function_(      "dGeomTriMeshSetRayCallback", ctypes.c_void_p, [
  4703.     ("g",       ctypes.POINTER(dxGeom)),
  4704.     ("Callback",        ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_double,ctypes.c_double,)),] )
  4705.  
  4706. dGeomTriMeshGetRayCallback = _rpythonic_function_(      "dGeomTriMeshGetRayCallback", ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_double,ctypes.c_double,), [
  4707.     ("g",       ctypes.POINTER(dxGeom)),] )
  4708.  
  4709. dTriTriMergeCallback = _rpythonic_function_(        "dTriTriMergeCallback", ctypes.c_int, [
  4710.     ("TriMesh",     ctypes.POINTER(dxGeom)),
  4711.     ("FirstTriangleIndex",      ctypes.c_int),
  4712.     ("SecondTriangleIndex",     ctypes.c_int),] )
  4713.  
  4714. dGeomTriMeshSetTriMergeCallback = _rpythonic_function_(     "dGeomTriMeshSetTriMergeCallback", ctypes.c_void_p, [
  4715.     ("g",       ctypes.POINTER(dxGeom)),
  4716.     ("Callback",        ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_int,)),] )
  4717.  
  4718. dGeomTriMeshGetTriMergeCallback = _rpythonic_function_(     "dGeomTriMeshGetTriMergeCallback", ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_int,), [
  4719.     ("g",       ctypes.POINTER(dxGeom)),] )
  4720.  
  4721. dCreateTriMesh = _rpythonic_function_(      "dCreateTriMesh", ctypes.POINTER(ctypes.c_void_p), [
  4722.     ("space",       ctypes.POINTER(dxSpace)),
  4723.     ("Data",        ctypes.POINTER(dxTriMeshData)),
  4724.     ("Callback",        ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,)),
  4725.     ("ArrayCallback",       ctypes.CFUNCTYPE(ctypes.c_void_p, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.POINTER(ctypes.c_int),ctypes.c_int,)),
  4726.     ("RayCallback",     ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.c_double,ctypes.c_double,)),] )
  4727.  
  4728. dGeomTriMeshSetData = _rpythonic_function_(     "dGeomTriMeshSetData", ctypes.c_void_p, [
  4729.     ("g",       ctypes.POINTER(dxGeom)),
  4730.     ("Data",        ctypes.POINTER(dxTriMeshData)),] )
  4731.  
  4732. dGeomTriMeshGetData = _rpythonic_function_(     "dGeomTriMeshGetData", ctypes.POINTER(ctypes.c_void_p), [
  4733.     ("g",       ctypes.POINTER(dxGeom)),] )
  4734.  
  4735. dGeomTriMeshEnableTC = _rpythonic_function_(        "dGeomTriMeshEnableTC", ctypes.c_void_p, [
  4736.     ("g",       ctypes.POINTER(dxGeom)),
  4737.     ("geomClass",       ctypes.c_int),
  4738.     ("enable",      ctypes.c_int),] )
  4739.  
  4740. dGeomTriMeshIsTCEnabled = _rpythonic_function_(     "dGeomTriMeshIsTCEnabled", ctypes.c_int, [
  4741.     ("g",       ctypes.POINTER(dxGeom)),
  4742.     ("geomClass",       ctypes.c_int),] )
  4743.  
  4744. dGeomTriMeshClearTCCache = _rpythonic_function_(        "dGeomTriMeshClearTCCache", ctypes.c_void_p, [
  4745.     ("g",       ctypes.POINTER(dxGeom)),] )
  4746.  
  4747. dGeomTriMeshGetTriMeshDataID = _rpythonic_function_(        "dGeomTriMeshGetTriMeshDataID", ctypes.POINTER(ctypes.c_void_p), [
  4748.     ("g",       ctypes.POINTER(dxGeom)),] )
  4749.  
  4750. dGeomTriMeshGetTriangle = _rpythonic_function_(     "dGeomTriMeshGetTriangle", ctypes.c_void_p, [
  4751.     ("g",       ctypes.POINTER(dxGeom)),
  4752.     ("Index",       ctypes.c_int),
  4753.     ("v0",      ctypes.POINTER(( ctypes.c_double * 4 ))),
  4754.     ("v1",      ctypes.POINTER(( ctypes.c_double * 4 ))),
  4755.     ("v2",      ctypes.POINTER(( ctypes.c_double * 4 ))),] )
  4756.  
  4757. dGeomTriMeshGetPoint = _rpythonic_function_(        "dGeomTriMeshGetPoint", ctypes.c_void_p, [
  4758.     ("g",       ctypes.POINTER(dxGeom)),
  4759.     ("Index",       ctypes.c_int),
  4760.     ("u",       ctypes.c_double),
  4761.     ("v",       ctypes.c_double),
  4762.     ("Out",     ( ctypes.c_double * 4 )),] )
  4763.  
  4764. dGeomTriMeshGetTriangleCount = _rpythonic_function_(        "dGeomTriMeshGetTriangleCount", ctypes.c_int, [
  4765.     ("g",       ctypes.POINTER(dxGeom)),] )
  4766.  
  4767. dGeomTriMeshDataUpdate = _rpythonic_function_(      "dGeomTriMeshDataUpdate", ctypes.c_void_p, [
  4768.     ("g",       ctypes.POINTER(dxTriMeshData)),] )
  4769.  
  4770. dCreateGeomTransform = _rpythonic_function_(        "dCreateGeomTransform", ctypes.POINTER(ctypes.c_void_p), [
  4771.     ("space",       ctypes.POINTER(dxSpace)),] )
  4772.  
  4773. dGeomTransformSetGeom = _rpythonic_function_(       "dGeomTransformSetGeom", ctypes.c_void_p, [
  4774.     ("g",       ctypes.POINTER(dxGeom)),
  4775.     ("obj",     ctypes.POINTER(dxGeom)),] )
  4776.  
  4777. dGeomTransformGetGeom = _rpythonic_function_(       "dGeomTransformGetGeom", ctypes.POINTER(ctypes.c_void_p), [
  4778.     ("g",       ctypes.POINTER(dxGeom)),] )
  4779.  
  4780. dGeomTransformSetCleanup = _rpythonic_function_(        "dGeomTransformSetCleanup", ctypes.c_void_p, [
  4781.     ("g",       ctypes.POINTER(dxGeom)),
  4782.     ("mode",        ctypes.c_int),] )
  4783.  
  4784. dGeomTransformGetCleanup = _rpythonic_function_(        "dGeomTransformGetCleanup", ctypes.c_int, [
  4785.     ("g",       ctypes.POINTER(dxGeom)),] )
  4786.  
  4787. dGeomTransformSetInfo = _rpythonic_function_(       "dGeomTransformSetInfo", ctypes.c_void_p, [
  4788.     ("g",       ctypes.POINTER(dxGeom)),
  4789.     ("mode",        ctypes.c_int),] )
  4790.  
  4791. dGeomTransformGetInfo = _rpythonic_function_(       "dGeomTransformGetInfo", ctypes.c_int, [
  4792.     ("g",       ctypes.POINTER(dxGeom)),] )
  4793.  
  4794. dHeightfieldGetHeight = _rpythonic_function_(       "dHeightfieldGetHeight", ctypes.c_double, [
  4795.     ("p_user_data",     ctypes.POINTER(ctypes.c_void_p)),
  4796.     ("x",       ctypes.c_int),
  4797.     ("z",       ctypes.c_int),] )
  4798.  
  4799. dCreateHeightfield = _rpythonic_function_(      "dCreateHeightfield", ctypes.POINTER(ctypes.c_void_p), [
  4800.     ("space",       ctypes.POINTER(dxSpace)),
  4801.     ("data",        ctypes.POINTER(dxHeightfieldData)),
  4802.     ("bPlaceable",      ctypes.c_int),] )
  4803.  
  4804. dGeomHeightfieldDataCreate = _rpythonic_function_(      "dGeomHeightfieldDataCreate", ctypes.POINTER(ctypes.c_void_p), [] )
  4805.  
  4806. dGeomHeightfieldDataDestroy = _rpythonic_function_(     "dGeomHeightfieldDataDestroy", ctypes.c_void_p, [
  4807.     ("d",       ctypes.POINTER(dxHeightfieldData)),] )
  4808.  
  4809. dGeomHeightfieldDataBuildCallback = _rpythonic_function_(       "dGeomHeightfieldDataBuildCallback", ctypes.c_void_p, [
  4810.     ("d",       ctypes.POINTER(dxHeightfieldData)),
  4811.     ("pUserData",       ctypes.POINTER(ctypes.c_void_p)),
  4812.     ("pCallback",       ctypes.CFUNCTYPE(ctypes.c_double, ctypes.POINTER(ctypes.c_void_p),ctypes.c_int,ctypes.c_int,)),
  4813.     ("width",       ctypes.c_double),
  4814.     ("depth",       ctypes.c_double),
  4815.     ("widthSamples",        ctypes.c_int),
  4816.     ("depthSamples",        ctypes.c_int),
  4817.     ("scale",       ctypes.c_double),
  4818.     ("offset",      ctypes.c_double),
  4819.     ("thickness",       ctypes.c_double),
  4820.     ("bWrap",       ctypes.c_int),] )
  4821.  
  4822. dGeomHeightfieldDataBuildByte = _rpythonic_function_(       "dGeomHeightfieldDataBuildByte", ctypes.c_void_p, [
  4823.     ("d",       ctypes.POINTER(dxHeightfieldData)),
  4824.     ("pHeightData",     ctypes.POINTER(ctypes.c_ubyte)),
  4825.     ("bCopyHeightData",     ctypes.c_int),
  4826.     ("width",       ctypes.c_double),
  4827.     ("depth",       ctypes.c_double),
  4828.     ("widthSamples",        ctypes.c_int),
  4829.     ("depthSamples",        ctypes.c_int),
  4830.     ("scale",       ctypes.c_double),
  4831.     ("offset",      ctypes.c_double),
  4832.     ("thickness",       ctypes.c_double),
  4833.     ("bWrap",       ctypes.c_int),] )
  4834.  
  4835. dGeomHeightfieldDataBuildShort = _rpythonic_function_(      "dGeomHeightfieldDataBuildShort", ctypes.c_void_p, [
  4836.     ("d",       ctypes.POINTER(dxHeightfieldData)),
  4837.     ("pHeightData",     ctypes.POINTER(ctypes.c_short)),
  4838.     ("bCopyHeightData",     ctypes.c_int),
  4839.     ("width",       ctypes.c_double),
  4840.     ("depth",       ctypes.c_double),
  4841.     ("widthSamples",        ctypes.c_int),
  4842.     ("depthSamples",        ctypes.c_int),
  4843.     ("scale",       ctypes.c_double),
  4844.     ("offset",      ctypes.c_double),
  4845.     ("thickness",       ctypes.c_double),
  4846.     ("bWrap",       ctypes.c_int),] )
  4847.  
  4848. dGeomHeightfieldDataBuildSingle = _rpythonic_function_(     "dGeomHeightfieldDataBuildSingle", ctypes.c_void_p, [
  4849.     ("d",       ctypes.POINTER(dxHeightfieldData)),
  4850.     ("pHeightData",     ctypes.POINTER(ctypes.c_float)),
  4851.     ("bCopyHeightData",     ctypes.c_int),
  4852.     ("width",       ctypes.c_double),
  4853.     ("depth",       ctypes.c_double),
  4854.     ("widthSamples",        ctypes.c_int),
  4855.     ("depthSamples",        ctypes.c_int),
  4856.     ("scale",       ctypes.c_double),
  4857.     ("offset",      ctypes.c_double),
  4858.     ("thickness",       ctypes.c_double),
  4859.     ("bWrap",       ctypes.c_int),] )
  4860.  
  4861. dGeomHeightfieldDataBuildDouble = _rpythonic_function_(     "dGeomHeightfieldDataBuildDouble", ctypes.c_void_p, [
  4862.     ("d",       ctypes.POINTER(dxHeightfieldData)),
  4863.     ("pHeightData",     ctypes.POINTER(ctypes.c_double)),
  4864.     ("bCopyHeightData",     ctypes.c_int),
  4865.     ("width",       ctypes.c_double),
  4866.     ("depth",       ctypes.c_double),
  4867.     ("widthSamples",        ctypes.c_int),
  4868.     ("depthSamples",        ctypes.c_int),
  4869.     ("scale",       ctypes.c_double),
  4870.     ("offset",      ctypes.c_double),
  4871.     ("thickness",       ctypes.c_double),
  4872.     ("bWrap",       ctypes.c_int),] )
  4873.  
  4874. dGeomHeightfieldDataSetBounds = _rpythonic_function_(       "dGeomHeightfieldDataSetBounds", ctypes.c_void_p, [
  4875.     ("d",       ctypes.POINTER(dxHeightfieldData)),
  4876.     ("minHeight",       ctypes.c_double),
  4877.     ("maxHeight",       ctypes.c_double),] )
  4878.  
  4879. dGeomHeightfieldSetHeightfieldData = _rpythonic_function_(      "dGeomHeightfieldSetHeightfieldData", ctypes.c_void_p, [
  4880.     ("g",       ctypes.POINTER(dxGeom)),
  4881.     ("d",       ctypes.POINTER(dxHeightfieldData)),] )
  4882.  
  4883. dGeomHeightfieldGetHeightfieldData = _rpythonic_function_(      "dGeomHeightfieldGetHeightfieldData", ctypes.POINTER(ctypes.c_void_p), [
  4884.     ("g",       ctypes.POINTER(dxGeom)),] )
  4885.  
  4886. dClosestLineSegmentPoints = _rpythonic_function_(       "dClosestLineSegmentPoints", ctypes.c_void_p, [
  4887.     ("a1",      ( ctypes.c_double * 4 )),
  4888.     ("a2",      ( ctypes.c_double * 4 )),
  4889.     ("b1",      ( ctypes.c_double * 4 )),
  4890.     ("b2",      ( ctypes.c_double * 4 )),
  4891.     ("cp1",     ( ctypes.c_double * 4 )),
  4892.     ("cp2",     ( ctypes.c_double * 4 )),] )
  4893.  
  4894. dBoxTouchesBox = _rpythonic_function_(      "dBoxTouchesBox", ctypes.c_int, [
  4895.     ("_p1",     ( ctypes.c_double * 4 )),
  4896.     ("R1",      ( ctypes.c_double * 12 )),
  4897.     ("side1",       ( ctypes.c_double * 4 )),
  4898.     ("_p2",     ( ctypes.c_double * 4 )),
  4899.     ("R2",      ( ctypes.c_double * 12 )),
  4900.     ("side2",       ( ctypes.c_double * 4 )),] )
  4901.  
  4902. dBoxBox = _rpythonic_function_(     "dBoxBox", ctypes.c_int, [
  4903.     ("p1",      ( ctypes.c_double * 4 )),
  4904.     ("R1",      ( ctypes.c_double * 12 )),
  4905.     ("side1",       ( ctypes.c_double * 4 )),
  4906.     ("p2",      ( ctypes.c_double * 4 )),
  4907.     ("R2",      ( ctypes.c_double * 12 )),
  4908.     ("side2",       ( ctypes.c_double * 4 )),
  4909.     ("normal",      ( ctypes.c_double * 4 )),
  4910.     ("depth",       ctypes.POINTER(ctypes.c_double)),
  4911.     ("return_code",     ctypes.POINTER(ctypes.c_int)),
  4912.     ("flags",       ctypes.c_int),
  4913.     ("contact",     ctypes.POINTER(dContactGeom)),
  4914.     ("skip",        ctypes.c_int),] )
  4915.  
  4916. dInfiniteAABB = _rpythonic_function_(       "dInfiniteAABB", ctypes.c_void_p, [
  4917.     ("geom",        ctypes.POINTER(dxGeom)),
  4918.     ("aabb",        ( ctypes.c_double * 6 )),] )
  4919.  
  4920. dGetAABBFn = _rpythonic_function_(      "dGetAABBFn", ctypes.c_void_p, [
  4921.     ("none",        ctypes.POINTER(ctypes.c_void_p)),
  4922.     ("aabb",        ( ctypes.c_double * 6 )),] )
  4923.  
  4924. dColliderFn = _rpythonic_function_(     "dColliderFn", ctypes.c_int, [
  4925.     ("o1",      ctypes.POINTER(dxGeom)),
  4926.     ("o2",      ctypes.POINTER(dxGeom)),
  4927.     ("flags",       ctypes.c_int),
  4928.     ("contact",     ctypes.POINTER(dContactGeom)),
  4929.     ("skip",        ctypes.c_int),] )
  4930.  
  4931. dGetColliderFnFn = _rpythonic_function_(        "dGetColliderFnFn", ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.POINTER(dContactGeom),ctypes.c_int,), [
  4932.     ("num",     ctypes.c_int),] )
  4933.  
  4934. dGeomDtorFn = _rpythonic_function_(     "dGeomDtorFn", ctypes.c_void_p, [
  4935.     ("o",       ctypes.POINTER(dxGeom)),] )
  4936.  
  4937. dAABBTestFn = _rpythonic_function_(     "dAABBTestFn", ctypes.c_int, [
  4938.     ("o1",      ctypes.POINTER(dxGeom)),
  4939.     ("o2",      ctypes.POINTER(dxGeom)),
  4940.     ("aabb",        ( ctypes.c_double * 6 )),] )
  4941.  
  4942. dCreateGeomClass = _rpythonic_function_(        "dCreateGeomClass", ctypes.c_int, [
  4943.     ("classptr",        ctypes.POINTER(dGeomClass)),] )
  4944.  
  4945. dGeomGetClassData = _rpythonic_function_(       "dGeomGetClassData", ctypes.POINTER(ctypes.c_void_p), [
  4946.     ("none",        ctypes.POINTER(ctypes.c_void_p)),] )
  4947.  
  4948. dCreateGeom = _rpythonic_function_(     "dCreateGeom", ctypes.POINTER(ctypes.c_void_p), [
  4949.     ("classnum",        ctypes.c_int),] )
  4950.  
  4951. dSetColliderOverride = _rpythonic_function_(        "dSetColliderOverride", ctypes.c_void_p, [
  4952.     ("i",       ctypes.c_int),
  4953.     ("j",       ctypes.c_int),
  4954.     ("fn",      ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(dxGeom),ctypes.POINTER(dxGeom),ctypes.c_int,ctypes.POINTER(dContactGeom),ctypes.c_int,)),] )
  4955.  
  4956. dWorldExportDIF = _rpythonic_function_(     "dWorldExportDIF", ctypes.c_void_p, [
  4957.     ("w",       ctypes.POINTER(dxWorld)),
  4958.     ("file",        ctypes.POINTER(_IO_FILE)),
  4959.     ("world_name",      ctypes.POINTER(ctypes.c_char)),] )
  4960.  
  4961.  
  4962. for _failed in RPYTHONIC_WRAPPER_FUNCTIONS_FAILURES: globals().pop( _failed )
  4963. print( "C functions loaded: %s" %len(RPYTHONIC_WRAPPER_FUNCTIONS) )
  4964. print( "C functions failed: %s" %len(RPYTHONIC_WRAPPER_FUNCTIONS_FAILURES) )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement