-- GENERATED by C->Haskell Compiler, version 0.28.6 Switcheroo, 25 November 2017 (Haskell)
-- Edit the ORIGNAL .chs file instead!


{-# LINE 1 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}
{-#LANGUAGE ForeignFunctionInterface#-}

module Physics.Bullet.Raw.BulletDynamics.Vehicle (
module Physics.Bullet.Raw.BulletDynamics.Vehicle
) where
import qualified Foreign.C.Types as C2HSImp
import qualified Foreign.Marshal.Utils as C2HSImp
import qualified Foreign.Ptr as C2HSImp


import Control.Monad
import Foreign.Marshal.Alloc
import Foreign.ForeignPtr.Unsafe
import Foreign.Ptr
import Physics.Bullet.Raw.C2HS
import Physics.Bullet.Raw.Types
import Physics.Bullet.Raw.Class
-- * RaycastInfo
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#41>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo :: IO ((BtWheelInfo_RaycastInfo))
btWheelInfo_RaycastInfo =
  btWheelInfo_RaycastInfo'_ >>= \res ->
  mkBtWheelInfo_RaycastInfo res >>= \res' ->
  return (res')

{-# LINE 17 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btWheelInfo_RaycastInfo_free :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ()
btWheelInfo_RaycastInfo_free a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_RaycastInfo_free'_ a1' >>
  return ()

{-# LINE 18 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#43>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_contactNormalWS_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_RaycastInfo_m_contactNormalWS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_contactNormalWS_set'_ a1' a2' >>
  return ()

{-# LINE 22 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#43>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_contactNormalWS_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_RaycastInfo_m_contactNormalWS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_contactNormalWS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 26 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#44>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_contactPointWS_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_RaycastInfo_m_contactPointWS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_contactPointWS_set'_ a1' a2' >>
  return ()

{-# LINE 30 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#44>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_contactPointWS_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_RaycastInfo_m_contactPointWS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_contactPointWS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 34 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#45>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_suspensionLength_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_RaycastInfo_m_suspensionLength_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_RaycastInfo_m_suspensionLength_set'_ a1' a2' >>
  return ()

{-# LINE 38 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#45>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_suspensionLength_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_RaycastInfo_m_suspensionLength_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_RaycastInfo_m_suspensionLength_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 42 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#46>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_hardPointWS_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_RaycastInfo_m_hardPointWS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_hardPointWS_set'_ a1' a2' >>
  return ()

{-# LINE 46 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#46>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_hardPointWS_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_RaycastInfo_m_hardPointWS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_hardPointWS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 50 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#47>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_wheelDirectionWS_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_RaycastInfo_m_wheelDirectionWS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_wheelDirectionWS_set'_ a1' a2' >>
  return ()

{-# LINE 54 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#47>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_wheelDirectionWS_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_RaycastInfo_m_wheelDirectionWS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_wheelDirectionWS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 58 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#48>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_wheelAxleWS_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_RaycastInfo_m_wheelAxleWS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_wheelAxleWS_set'_ a1' a2' >>
  return ()

{-# LINE 62 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#48>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_wheelAxleWS_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_RaycastInfo_m_wheelAxleWS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_wheelAxleWS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 66 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#49>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_isInContact_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (Bool) -> IO ()
btWheelInfo_RaycastInfo_m_isInContact_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = C2HSImp.fromBool a2} in 
  btWheelInfo_RaycastInfo_m_isInContact_set'_ a1' a2' >>
  return ()

{-# LINE 70 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#49>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_isInContact_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((Bool))
btWheelInfo_RaycastInfo_m_isInContact_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_RaycastInfo_m_isInContact_get'_ a1' >>= \res ->
  let {res' = C2HSImp.toBool res} in
  return (res')

{-# LINE 74 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#50>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_groundObject_set :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> (VoidPtr) -> IO ()
btWheelInfo_RaycastInfo_m_groundObject_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVoidPtr a2 $ \a2' -> 
  btWheelInfo_RaycastInfo_m_groundObject_set'_ a1' a2' >>
  return ()

{-# LINE 78 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#50>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_RaycastInfo_m_groundObject_get :: ( BtWheelInfo_RaycastInfoClass bc ) => (bc) -> IO ((VoidPtr))
btWheelInfo_RaycastInfo_m_groundObject_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_RaycastInfo_m_groundObject_get'_ a1' >>= \res ->
  mkVoidPtr res >>= \res' ->
  return (res')

{-# LINE 82 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btDefaultVehicleRaycaster
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#225>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btDefaultVehicleRaycaster :: ( BtDynamicsWorldClass p0 ) => (p0) -> IO ((BtDefaultVehicleRaycaster))
btDefaultVehicleRaycaster a1 =
  withBt a1 $ \a1' -> 
  btDefaultVehicleRaycaster'_ a1' >>= \res ->
  mkBtDefaultVehicleRaycaster res >>= \res' ->
  return (res')

{-# LINE 87 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btDefaultVehicleRaycaster_free :: ( BtDefaultVehicleRaycasterClass bc ) => (bc) -> IO ()
btDefaultVehicleRaycaster_free a1 =
  withBt a1 $ \a1' -> 
  btDefaultVehicleRaycaster_free'_ a1' >>
  return ()

{-# LINE 88 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#230>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btDefaultVehicleRaycaster_castRay :: ( BtDefaultVehicleRaycasterClass bc , BtVehicleRaycaster_btVehicleRaycasterResultClass p2 ) => (bc) -- ^ 
 -> (Vec3) -- ^ from
 -> (Vec3) -- ^ to
 -> (p2) -- ^ result
 -> IO ((VoidPtr), (Vec3), (Vec3))
btDefaultVehicleRaycaster_castRay a1 a2 a3 a4 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  withVec3 a3 $ \a3' -> 
  withBt a4 $ \a4' -> 
  btDefaultVehicleRaycaster_castRay'_ a1' a2' a3' a4' >>= \res ->
  mkVoidPtr res >>= \res' ->
  peekVec3  a2'>>= \a2'' -> 
  peekVec3  a3'>>= \a3'' -> 
  return (res', a2'', a3'')

{-# LINE 96 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#230>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btDefaultVehicleRaycaster_castRay' :: ( BtDefaultVehicleRaycasterClass bc , BtVehicleRaycaster_btVehicleRaycasterResultClass p2 ) => (bc) -- ^ 
 -> (p2) -- ^ result
 -> IO ((VoidPtr), (Vec3), (Vec3))
btDefaultVehicleRaycaster_castRay' a1 a4 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  allocaVec3 $ \a3' -> 
  withBt a4 $ \a4' -> 
  btDefaultVehicleRaycaster_castRay''_ a1' a2' a3' a4' >>= \res ->
  mkVoidPtr res >>= \res' ->
  peekVec3  a2'>>= \a2'' -> 
  peekVec3  a3'>>= \a3'' -> 
  return (res', a2'', a3'')

{-# LINE 104 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#223>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btDefaultVehicleRaycaster_m_dynamicsWorld_set :: ( BtDefaultVehicleRaycasterClass bc , BtDynamicsWorldClass a ) => (bc) -> (a) -> IO ()
btDefaultVehicleRaycaster_m_dynamicsWorld_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btDefaultVehicleRaycaster_m_dynamicsWorld_set'_ a1' a2' >>
  return ()

{-# LINE 108 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#223>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btDefaultVehicleRaycaster_m_dynamicsWorld_get :: ( BtDefaultVehicleRaycasterClass bc ) => (bc) -> IO ((BtDynamicsWorld))
btDefaultVehicleRaycaster_m_dynamicsWorld_get a1 =
  withBt a1 $ \a1' -> 
  btDefaultVehicleRaycaster_m_dynamicsWorld_get'_ a1' >>= \res ->
  mkBtDynamicsWorld res >>= \res' ->
  return (res')

{-# LINE 112 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btRaycastVehicle
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#79>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle :: ( BtRaycastVehicle_btVehicleTuningClass p0 , BtRigidBodyClass p1 , BtVehicleRaycasterClass p2 ) => (p0) -> (p1) -> (p2) -> IO ((BtRaycastVehicle))
btRaycastVehicle a1 a2 a3 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  withBt a3 $ \a3' -> 
  btRaycastVehicle'_ a1' a2' a3' >>= \res ->
  mkBtRaycastVehicle res >>= \res' ->
  return (res')

{-# LINE 117 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btRaycastVehicle_free :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ()
btRaycastVehicle_free a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_free'_ a1' >>
  return ()

{-# LINE 118 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#140>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_updateSuspension :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ deltaTime
 -> IO ()
btRaycastVehicle_updateSuspension a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_updateSuspension'_ a1' a2' >>
  return ()

{-# LINE 124 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#146>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getRigidBody :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((BtRigidBody))
btRaycastVehicle_getRigidBody a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getRigidBody'_ a1' >>= \res ->
  mkBtRigidBody res >>= \res' ->
  return (res')

{-# LINE 129 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#146>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getRigidBody0 :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((BtRigidBody))
btRaycastVehicle_getRigidBody0 a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getRigidBody0'_ a1' >>= \res ->
  mkBtRigidBody res >>= \res' ->
  return (res')

{-# LINE 134 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#151>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getRigidBody1 :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((BtRigidBody))
btRaycastVehicle_getRigidBody1 a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getRigidBody1'_ a1' >>= \res ->
  mkBtRigidBody res >>= \res' ->
  return (res')

{-# LINE 139 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#214>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getUserConstraintId :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Int))
btRaycastVehicle_getUserConstraintId a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getUserConstraintId'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 144 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#74>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_defaultInit :: ( BtRaycastVehicleClass bc , BtRaycastVehicle_btVehicleTuningClass p0 ) => (bc) -- ^ 
 -> (p0) -- ^ tuning
 -> IO ()
btRaycastVehicle_defaultInit a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_defaultInit'_ a1' a2' >>
  return ()

{-# LINE 150 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#111>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getWheelTransformWS :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ wheelIndex
 -> IO ((Transform))
btRaycastVehicle_getWheelTransformWS a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  allocaTransform $ \a3' -> 
  btRaycastVehicle_getWheelTransformWS'_ a1' a2' a3' >>
  peekTransform  a3'>>= \a3'' -> 
  return (a3'')

{-# LINE 157 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#117>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_addWheel :: ( BtRaycastVehicleClass bc , BtRaycastVehicle_btVehicleTuningClass p5 ) => (bc) -- ^ 
 -> (Vec3) -- ^ connectionPointCS0
 -> (Vec3) -- ^ wheelDirectionCS0
 -> (Vec3) -- ^ wheelAxleCS
 -> (Float) -- ^ suspensionRestLength
 -> (Float) -- ^ wheelRadius
 -> (p5) -- ^ tuning
 -> (Bool) -- ^ isFrontWheel
 -> IO ((BtWheelInfo), (Vec3), (Vec3), (Vec3))
btRaycastVehicle_addWheel a1 a2 a3 a4 a5 a6 a7 a8 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  withVec3 a3 $ \a3' -> 
  withVec3 a4 $ \a4' -> 
  let {a5' = realToFrac a5} in 
  let {a6' = realToFrac a6} in 
  withBt a7 $ \a7' -> 
  let {a8' = C2HSImp.fromBool a8} in 
  btRaycastVehicle_addWheel'_ a1' a2' a3' a4' a5' a6' a7' a8' >>= \res ->
  mkBtWheelInfo res >>= \res' ->
  peekVec3  a2'>>= \a2'' -> 
  peekVec3  a3'>>= \a3'' -> 
  peekVec3  a4'>>= \a4'' -> 
  return (res', a2'', a3'', a4'')

{-# LINE 169 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#117>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_addWheel' :: ( BtRaycastVehicleClass bc , BtRaycastVehicle_btVehicleTuningClass p5 ) => (bc) -- ^ 
 -> (Float) -- ^ suspensionRestLength
 -> (Float) -- ^ wheelRadius
 -> (p5) -- ^ tuning
 -> (Bool) -- ^ isFrontWheel
 -> IO ((BtWheelInfo), (Vec3), (Vec3), (Vec3))
btRaycastVehicle_addWheel' a1 a5 a6 a7 a8 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  allocaVec3 $ \a3' -> 
  allocaVec3 $ \a4' -> 
  let {a5' = realToFrac a5} in 
  let {a6' = realToFrac a6} in 
  withBt a7 $ \a7' -> 
  let {a8' = C2HSImp.fromBool a8} in 
  btRaycastVehicle_addWheel''_ a1' a2' a3' a4' a5' a6' a7' a8' >>= \res ->
  mkBtWheelInfo res >>= \res' ->
  peekVec3  a2'>>= \a2'' -> 
  peekVec3  a3'>>= \a3'' -> 
  peekVec3  a4'>>= \a4'' -> 
  return (res', a2'', a3'', a4'')

{-# LINE 181 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#113>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_updateWheelTransform :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ wheelIndex
 -> (Bool) -- ^ interpolatedTransform
 -> IO ()
btRaycastVehicle_updateWheelTransform a1 a2 a3 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  let {a3' = C2HSImp.fromBool a3} in 
  btRaycastVehicle_updateWheelTransform'_ a1' a2' a3' >>
  return ()

{-# LINE 188 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#209>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_setUserConstraintId :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ uid
 -> IO ()
btRaycastVehicle_setUserConstraintId a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_setUserConstraintId'_ a1' a2' >>
  return ()

{-# LINE 194 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#119>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getNumWheels :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Int))
btRaycastVehicle_getNumWheels a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getNumWheels'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 199 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#97>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_rayCast :: ( BtRaycastVehicleClass bc , BtWheelInfoClass p0 ) => (bc) -- ^ 
 -> (p0) -- ^ wheel
 -> IO ((Float))
btRaycastVehicle_rayCast a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_rayCast'_ a1' a2' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 205 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#156>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getRightAxis :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Int))
btRaycastVehicle_getRightAxis a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getRightAxis'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 210 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#109>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_applyEngineForce :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ force
 -> (Int) -- ^ wheel
 -> IO ()
btRaycastVehicle_applyEngineForce a1 a2 a3 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  let {a3' = fromIntegral a3} in 
  btRaycastVehicle_applyEngineForce'_ a1' a2' a3' >>
  return ()

{-# LINE 217 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#172>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getForwardVector :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Vec3))
btRaycastVehicle_getForwardVector a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btRaycastVehicle_getForwardVector'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 223 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#126>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getWheelInfo :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ index
 -> IO ((BtWheelInfo))
btRaycastVehicle_getWheelInfo a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_getWheelInfo'_ a1' a2' >>= \res ->
  mkBtWheelInfo res >>= \res' ->
  return (res')

{-# LINE 229 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#126>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getWheelInfo0 :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ index
 -> IO ((BtWheelInfo))
btRaycastVehicle_getWheelInfo0 a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_getWheelInfo0'_ a1' a2' >>= \res ->
  mkBtWheelInfo res >>= \res' ->
  return (res')

{-# LINE 235 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#128>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getWheelInfo1 :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ index
 -> IO ((BtWheelInfo))
btRaycastVehicle_getWheelInfo1 a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_getWheelInfo1'_ a1' a2' >>= \res ->
  mkBtWheelInfo res >>= \res' ->
  return (res')

{-# LINE 241 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#95>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getChassisWorldTransform :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Transform))
btRaycastVehicle_getChassisWorldTransform a1 =
  withBt a1 $ \a1' -> 
  allocaTransform $ \a2' -> 
  btRaycastVehicle_getChassisWorldTransform'_ a1' a2' >>
  peekTransform  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 247 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#130>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_updateWheelTransformsWS :: ( BtRaycastVehicleClass bc , BtWheelInfoClass p0 ) => (bc) -- ^ 
 -> (p0) -- ^ wheel
 -> (Bool) -- ^ interpolatedTransform
 -> IO ()
btRaycastVehicle_updateWheelTransformsWS a1 a2 a3 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  let {a3' = C2HSImp.fromBool a3} in 
  btRaycastVehicle_updateWheelTransformsWS'_ a1' a2' a3' >>
  return ()

{-# LINE 254 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#102>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_resetSuspension :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ()
btRaycastVehicle_resetSuspension a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_resetSuspension'_ a1' >>
  return ()

{-# LINE 259 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#190>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_setCoordinateSystem :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ rightIndex
 -> (Int) -- ^ upIndex
 -> (Int) -- ^ forwardIndex
 -> IO ()
btRaycastVehicle_setCoordinateSystem a1 a2 a3 a4 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  let {a3' = fromIntegral a3} in 
  let {a4' = fromIntegral a4} in 
  btRaycastVehicle_setCoordinateSystem'_ a1' a2' a3' a4' >>
  return ()

{-# LINE 267 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#204>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_setUserConstraintType :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ userConstraintType
 -> IO ()
btRaycastVehicle_setUserConstraintType a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_setUserConstraintType'_ a1' a2' >>
  return ()

{-# LINE 273 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#93>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_debugDraw :: ( BtRaycastVehicleClass bc , BtIDebugDrawClass p0 ) => (bc) -- ^ 
 -> (p0) -- ^ debugDrawer
 -> IO ()
btRaycastVehicle_debugDraw a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_debugDraw'_ a1' a2' >>
  return ()

{-# LINE 279 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#142>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_updateFriction :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ timeStep
 -> IO ()
btRaycastVehicle_updateFriction a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_updateFriction'_ a1' a2' >>
  return ()

{-# LINE 285 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#165>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getForwardAxis :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Int))
btRaycastVehicle_getForwardAxis a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getForwardAxis'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 290 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#104>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getSteeringValue :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Int) -- ^ wheel
 -> IO ((Float))
btRaycastVehicle_getSteeringValue a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_getSteeringValue'_ a1' a2' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 296 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#199>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getUserConstraintType :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Int))
btRaycastVehicle_getUserConstraintType a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getUserConstraintType'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 301 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#160>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getUpAxis :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Int))
btRaycastVehicle_getUpAxis a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getUpAxis'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 306 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#135>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_setPitchControl :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ pitch
 -> IO ()
btRaycastVehicle_setPitchControl a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_setPitchControl'_ a1' a2' >>
  return ()

{-# LINE 312 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#185>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_getCurrentSpeedKmHour :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> IO ((Float))
btRaycastVehicle_getCurrentSpeedKmHour a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_getCurrentSpeedKmHour'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 317 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#133>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_setBrake :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ brake
 -> (Int) -- ^ wheelIndex
 -> IO ()
btRaycastVehicle_setBrake a1 a2 a3 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  let {a3' = fromIntegral a3} in 
  btRaycastVehicle_setBrake'_ a1' a2' a3' >>
  return ()

{-# LINE 324 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#106>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_setSteeringValue :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ steering
 -> (Int) -- ^ wheel
 -> IO ()
btRaycastVehicle_setSteeringValue a1 a2 a3 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  let {a3' = fromIntegral a3} in 
  btRaycastVehicle_setSteeringValue'_ a1' a2' a3' >>
  return ()

{-# LINE 331 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#99>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_updateVehicle :: ( BtRaycastVehicleClass bc ) => (bc) -- ^ 
 -> (Float) -- ^ step
 -> IO ()
btRaycastVehicle_updateVehicle a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_updateVehicle'_ a1' a2' >>
  return ()

{-# LINE 337 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#85>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_updateAction :: ( BtRaycastVehicleClass bc , BtCollisionWorldClass p0 ) => (bc) -- ^ 
 -> (p0) -- ^ collisionWorld
 -> (Float) -- ^ step
 -> IO ()
btRaycastVehicle_updateAction a1 a2 a3 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  let {a3' = realToFrac a3} in 
  btRaycastVehicle_updateAction'_ a1' a2' a3' >>
  return ()

{-# LINE 344 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#28>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_forwardWS_set :: ( BtRaycastVehicleClass bc , BtAlignedObjectArray_btVector3_Class a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_forwardWS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_forwardWS_set'_ a1' a2' >>
  return ()

{-# LINE 348 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#28>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_forwardWS_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtAlignedObjectArray_btVector3_))
btRaycastVehicle_m_forwardWS_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_forwardWS_get'_ a1' >>= \res ->
  mkBtAlignedObjectArray_btVector3_ res >>= \res' ->
  return (res')

{-# LINE 352 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#29>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_axle_set :: ( BtRaycastVehicleClass bc , BtAlignedObjectArray_btVector3_Class a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_axle_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_axle_set'_ a1' a2' >>
  return ()

{-# LINE 356 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#29>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_axle_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtAlignedObjectArray_btVector3_))
btRaycastVehicle_m_axle_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_axle_get'_ a1' >>= \res ->
  mkBtAlignedObjectArray_btVector3_ res >>= \res' ->
  return (res')

{-# LINE 360 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#30>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_forwardImpulse_set :: ( BtRaycastVehicleClass bc , BtAlignedObjectArray_float_Class a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_forwardImpulse_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_forwardImpulse_set'_ a1' a2' >>
  return ()

{-# LINE 364 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#30>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_forwardImpulse_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtAlignedObjectArray_float_))
btRaycastVehicle_m_forwardImpulse_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_forwardImpulse_get'_ a1' >>= \res ->
  mkBtAlignedObjectArray_float_ res >>= \res' ->
  return (res')

{-# LINE 368 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#31>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_sideImpulse_set :: ( BtRaycastVehicleClass bc , BtAlignedObjectArray_float_Class a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_sideImpulse_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_sideImpulse_set'_ a1' a2' >>
  return ()

{-# LINE 372 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#31>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_sideImpulse_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtAlignedObjectArray_float_))
btRaycastVehicle_m_sideImpulse_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_sideImpulse_get'_ a1' >>= \res ->
  mkBtAlignedObjectArray_float_ res >>= \res' ->
  return (res')

{-# LINE 376 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#34>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_userConstraintType_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Int) -> IO ()
btRaycastVehicle_m_userConstraintType_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_m_userConstraintType_set'_ a1' a2' >>
  return ()

{-# LINE 380 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#34>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_userConstraintType_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Int))
btRaycastVehicle_m_userConstraintType_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_userConstraintType_get'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 384 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#35>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_userConstraintId_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Int) -> IO ()
btRaycastVehicle_m_userConstraintId_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_m_userConstraintId_set'_ a1' a2' >>
  return ()

{-# LINE 388 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#35>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_userConstraintId_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Int))
btRaycastVehicle_m_userConstraintId_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_userConstraintId_get'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 392 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#61>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_tau_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_m_tau_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_m_tau_set'_ a1' a2' >>
  return ()

{-# LINE 396 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#61>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_tau_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_m_tau_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_tau_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 400 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#62>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_damping_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_m_damping_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_m_damping_set'_ a1' a2' >>
  return ()

{-# LINE 404 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#62>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_damping_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_m_damping_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_damping_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 408 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#63>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_vehicleRaycaster_set :: ( BtRaycastVehicleClass bc , BtVehicleRaycasterClass a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_vehicleRaycaster_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_vehicleRaycaster_set'_ a1' a2' >>
  return ()

{-# LINE 412 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#63>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_vehicleRaycaster_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtVehicleRaycaster))
btRaycastVehicle_m_vehicleRaycaster_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_vehicleRaycaster_get'_ a1' >>= \res ->
  mkBtVehicleRaycaster res >>= \res' ->
  return (res')

{-# LINE 416 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#64>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_pitchControl_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_m_pitchControl_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_m_pitchControl_set'_ a1' a2' >>
  return ()

{-# LINE 420 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#64>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_pitchControl_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_m_pitchControl_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_pitchControl_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 424 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#65>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_steeringValue_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_m_steeringValue_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_m_steeringValue_set'_ a1' a2' >>
  return ()

{-# LINE 428 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#65>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_steeringValue_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_m_steeringValue_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_steeringValue_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 432 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#66>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_currentVehicleSpeedKmHour_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_m_currentVehicleSpeedKmHour_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_m_currentVehicleSpeedKmHour_set'_ a1' a2' >>
  return ()

{-# LINE 436 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#66>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_currentVehicleSpeedKmHour_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_m_currentVehicleSpeedKmHour_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_currentVehicleSpeedKmHour_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 440 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#68>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_chassisBody_set :: ( BtRaycastVehicleClass bc , BtRigidBodyClass a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_chassisBody_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_chassisBody_set'_ a1' a2' >>
  return ()

{-# LINE 444 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#68>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_chassisBody_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtRigidBody))
btRaycastVehicle_m_chassisBody_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_chassisBody_get'_ a1' >>= \res ->
  mkBtRigidBody res >>= \res' ->
  return (res')

{-# LINE 448 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#70>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_indexRightAxis_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Int) -> IO ()
btRaycastVehicle_m_indexRightAxis_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_m_indexRightAxis_set'_ a1' a2' >>
  return ()

{-# LINE 452 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#70>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_indexRightAxis_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Int))
btRaycastVehicle_m_indexRightAxis_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_indexRightAxis_get'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 456 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#71>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_indexUpAxis_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Int) -> IO ()
btRaycastVehicle_m_indexUpAxis_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_m_indexUpAxis_set'_ a1' a2' >>
  return ()

{-# LINE 460 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#71>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_indexUpAxis_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Int))
btRaycastVehicle_m_indexUpAxis_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_indexUpAxis_get'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 464 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#72>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_indexForwardAxis_set :: ( BtRaycastVehicleClass bc ) => (bc) -> (Int) -> IO ()
btRaycastVehicle_m_indexForwardAxis_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = fromIntegral a2} in 
  btRaycastVehicle_m_indexForwardAxis_set'_ a1' a2' >>
  return ()

{-# LINE 468 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#72>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_indexForwardAxis_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((Int))
btRaycastVehicle_m_indexForwardAxis_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_indexForwardAxis_get'_ a1' >>= \res ->
  let {res' = fromIntegral res} in
  return (res')

{-# LINE 472 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#123>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_wheelInfo_set :: ( BtRaycastVehicleClass bc , BtAlignedObjectArray_btWheelInfo_Class a ) => (bc) -> (a) -> IO ()
btRaycastVehicle_m_wheelInfo_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btRaycastVehicle_m_wheelInfo_set'_ a1' a2' >>
  return ()

{-# LINE 476 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#123>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_m_wheelInfo_get :: ( BtRaycastVehicleClass bc ) => (bc) -> IO ((BtAlignedObjectArray_btWheelInfo_))
btRaycastVehicle_m_wheelInfo_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_m_wheelInfo_get'_ a1' >>= \res ->
  mkBtAlignedObjectArray_btWheelInfo_ res >>= \res' ->
  return (res')

{-# LINE 480 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btVehicleRaycaster
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#30>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_castRay :: ( BtVehicleRaycasterClass bc , BtVehicleRaycaster_btVehicleRaycasterResultClass p2 ) => (bc) -- ^ 
 -> (Vec3) -- ^ from
 -> (Vec3) -- ^ to
 -> (p2) -- ^ result
 -> IO ((VoidPtr), (Vec3), (Vec3))
btVehicleRaycaster_castRay a1 a2 a3 a4 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  withVec3 a3 $ \a3' -> 
  withBt a4 $ \a4' -> 
  btVehicleRaycaster_castRay'_ a1' a2' a3' a4' >>= \res ->
  mkVoidPtr res >>= \res' ->
  peekVec3  a2'>>= \a2'' -> 
  peekVec3  a3'>>= \a3'' -> 
  return (res', a2'', a3'')

{-# LINE 489 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#30>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_castRay' :: ( BtVehicleRaycasterClass bc , BtVehicleRaycaster_btVehicleRaycasterResultClass p2 ) => (bc) -- ^ 
 -> (p2) -- ^ result
 -> IO ((VoidPtr), (Vec3), (Vec3))
btVehicleRaycaster_castRay' a1 a4 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  allocaVec3 $ \a3' -> 
  withBt a4 $ \a4' -> 
  btVehicleRaycaster_castRay''_ a1' a2' a3' a4' >>= \res ->
  mkVoidPtr res >>= \res' ->
  peekVec3  a2'>>= \a2'' -> 
  peekVec3  a3'>>= \a3'' -> 
  return (res', a2'', a3'')

{-# LINE 497 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btVehicleRaycasterResult
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#24>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult :: IO ((BtVehicleRaycaster_btVehicleRaycasterResult))
btVehicleRaycaster_btVehicleRaycasterResult =
  btVehicleRaycaster_btVehicleRaycasterResult'_ >>= \res ->
  mkBtVehicleRaycaster_btVehicleRaycasterResult res >>= \res' ->
  return (res')

{-# LINE 502 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btVehicleRaycaster_btVehicleRaycasterResult_free :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> IO ()
btVehicleRaycaster_btVehicleRaycasterResult_free a1 =
  withBt a1 $ \a1' -> 
  btVehicleRaycaster_btVehicleRaycasterResult_free'_ a1' >>
  return ()

{-# LINE 503 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#27>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_set :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> (Float) -> IO ()
btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_set'_ a1' a2' >>
  return ()

{-# LINE 507 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#27>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_get :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> IO ((Float))
btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_get a1 =
  withBt a1 $ \a1' -> 
  btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 511 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#26>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_set :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> (Vec3) -> IO ()
btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_set'_ a1' a2' >>
  return ()

{-# LINE 515 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#26>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_get :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> IO ((Vec3))
btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 519 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#25>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_set :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> (Vec3) -> IO ()
btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_set'_ a1' a2' >>
  return ()

{-# LINE 523 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.h?r=2223#25>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btVehicleRaycaster.cpp?r=2223>
-}
btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_get :: ( BtVehicleRaycaster_btVehicleRaycasterResultClass bc ) => (bc) -> IO ((Vec3))
btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 527 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btVehicleTuning
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#42>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning :: IO ((BtRaycastVehicle_btVehicleTuning))
btRaycastVehicle_btVehicleTuning =
  btRaycastVehicle_btVehicleTuning'_ >>= \res ->
  mkBtRaycastVehicle_btVehicleTuning res >>= \res' ->
  return (res')

{-# LINE 532 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btRaycastVehicle_btVehicleTuning_free :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ()
btRaycastVehicle_btVehicleTuning_free a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_free'_ a1' >>
  return ()

{-# LINE 533 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#55>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_frictionSlip_set :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_btVehicleTuning_m_frictionSlip_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_btVehicleTuning_m_frictionSlip_set'_ a1' a2' >>
  return ()

{-# LINE 537 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#55>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_frictionSlip_get :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_btVehicleTuning_m_frictionSlip_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_m_frictionSlip_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 541 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#56>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_set :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_set'_ a1' a2' >>
  return ()

{-# LINE 545 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#56>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_get :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 549 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#54>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_set :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_set'_ a1' a2' >>
  return ()

{-# LINE 553 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#54>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_get :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 557 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#52>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_suspensionCompression_set :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_btVehicleTuning_m_suspensionCompression_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_btVehicleTuning_m_suspensionCompression_set'_ a1' a2' >>
  return ()

{-# LINE 561 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#52>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_suspensionCompression_get :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_btVehicleTuning_m_suspensionCompression_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_m_suspensionCompression_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 565 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#53>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_suspensionDamping_set :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_btVehicleTuning_m_suspensionDamping_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_btVehicleTuning_m_suspensionDamping_set'_ a1' a2' >>
  return ()

{-# LINE 569 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#53>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_suspensionDamping_get :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_btVehicleTuning_m_suspensionDamping_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_m_suspensionDamping_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 573 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#51>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_set :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> (Float) -> IO ()
btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_set'_ a1' a2' >>
  return ()

{-# LINE 577 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.h?r=2223#51>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btRaycastVehicle.cpp?r=2223>
-}
btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_get :: ( BtRaycastVehicle_btVehicleTuningClass bc ) => (bc) -> IO ((Float))
btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_get a1 =
  withBt a1 $ \a1' -> 
  btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 581 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btWheelInfo
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#82>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo :: ( BtWheelInfoConstructionInfoClass p0 ) => (p0) -> IO ((BtWheelInfo))
btWheelInfo a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo'_ a1' >>= \res ->
  mkBtWheelInfo res >>= \res' ->
  return (res')

{-# LINE 586 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btWheelInfo_free :: ( BtWheelInfoClass bc ) => (bc) -> IO ()
btWheelInfo_free a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_free'_ a1' >>
  return ()

{-# LINE 587 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#62>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_getSuspensionRestLength :: ( BtWheelInfoClass bc ) => (bc) -- ^ 
 -> IO ((Float))
btWheelInfo_getSuspensionRestLength a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_getSuspensionRestLength'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 592 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#108>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_updateWheel :: ( BtWheelInfoClass bc , BtRigidBodyClass p0 , BtWheelInfo_RaycastInfoClass p1 ) => (bc) -- ^ 
 -> (p0) -- ^ chassis
 -> (p1) -- ^ raycastInfo
 -> IO ()
btWheelInfo_updateWheel a1 a2 a3 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  withBt a3 $ \a3' -> 
  btWheelInfo_updateWheel'_ a1' a2' a3' >>
  return ()

{-# LINE 599 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#78>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_bIsFrontWheel_set :: ( BtWheelInfoClass bc ) => (bc) -> (Bool) -> IO ()
btWheelInfo_m_bIsFrontWheel_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = C2HSImp.fromBool a2} in 
  btWheelInfo_m_bIsFrontWheel_set'_ a1' a2' >>
  return ()

{-# LINE 603 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#78>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_bIsFrontWheel_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Bool))
btWheelInfo_m_bIsFrontWheel_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_bIsFrontWheel_get'_ a1' >>= \res ->
  let {res' = C2HSImp.toBool res} in
  return (res')

{-# LINE 607 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#76>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_brake_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_brake_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_brake_set'_ a1' a2' >>
  return ()

{-# LINE 611 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#76>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_brake_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_brake_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_brake_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 615 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#57>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_chassisConnectionPointCS_set :: ( BtWheelInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_m_chassisConnectionPointCS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_m_chassisConnectionPointCS_set'_ a1' a2' >>
  return ()

{-# LINE 619 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#57>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_chassisConnectionPointCS_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_m_chassisConnectionPointCS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_m_chassisConnectionPointCS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 623 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#80>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_clientInfo_set :: ( BtWheelInfoClass bc ) => (bc) -> (VoidPtr) -> IO ()
btWheelInfo_m_clientInfo_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVoidPtr a2 $ \a2' -> 
  btWheelInfo_m_clientInfo_set'_ a1' a2' >>
  return ()

{-# LINE 627 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#80>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_clientInfo_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((VoidPtr))
btWheelInfo_m_clientInfo_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_clientInfo_get'_ a1' >>= \res ->
  mkVoidPtr res >>= \res' ->
  return (res')

{-# LINE 631 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#110>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_clippedInvContactDotSuspension_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_clippedInvContactDotSuspension_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_clippedInvContactDotSuspension_set'_ a1' a2' >>
  return ()

{-# LINE 635 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#110>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_clippedInvContactDotSuspension_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_clippedInvContactDotSuspension_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_clippedInvContactDotSuspension_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 639 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#70>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_deltaRotation_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_deltaRotation_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_deltaRotation_set'_ a1' a2' >>
  return ()

{-# LINE 643 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#70>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_deltaRotation_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_deltaRotation_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_deltaRotation_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 647 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#74>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_engineForce_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_engineForce_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_engineForce_set'_ a1' a2' >>
  return ()

{-# LINE 651 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#74>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_engineForce_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_engineForce_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_engineForce_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 655 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#67>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_frictionSlip_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_frictionSlip_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_frictionSlip_set'_ a1' a2' >>
  return ()

{-# LINE 659 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#67>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_frictionSlip_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_frictionSlip_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_frictionSlip_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 663 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#72>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_maxSuspensionForce_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_maxSuspensionForce_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_maxSuspensionForce_set'_ a1' a2' >>
  return ()

{-# LINE 667 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#72>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_maxSuspensionForce_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_maxSuspensionForce_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_maxSuspensionForce_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 671 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#61>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_maxSuspensionTravelCm_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_maxSuspensionTravelCm_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_maxSuspensionTravelCm_set'_ a1' a2' >>
  return ()

{-# LINE 675 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#61>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_maxSuspensionTravelCm_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_maxSuspensionTravelCm_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_maxSuspensionTravelCm_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 679 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#53>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_raycastInfo_set :: ( BtWheelInfoClass bc , BtWheelInfo_RaycastInfoClass a ) => (bc) -> (a) -> IO ()
btWheelInfo_m_raycastInfo_set a1 a2 =
  withBt a1 $ \a1' -> 
  withBt a2 $ \a2' -> 
  btWheelInfo_m_raycastInfo_set'_ a1' a2' >>
  return ()

{-# LINE 683 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#53>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_raycastInfo_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((BtWheelInfo_RaycastInfo))
btWheelInfo_m_raycastInfo_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_raycastInfo_get'_ a1' >>= \res ->
  mkBtWheelInfo_RaycastInfo res >>= \res' ->
  return (res')

{-# LINE 687 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#71>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_rollInfluence_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_rollInfluence_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_rollInfluence_set'_ a1' a2' >>
  return ()

{-# LINE 691 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#71>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_rollInfluence_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_rollInfluence_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_rollInfluence_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 695 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#69>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_rotation_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_rotation_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_rotation_set'_ a1' a2' >>
  return ()

{-# LINE 699 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#69>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_rotation_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_rotation_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_rotation_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 703 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#114>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_skidInfo_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_skidInfo_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_skidInfo_set'_ a1' a2' >>
  return ()

{-# LINE 707 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#114>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_skidInfo_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_skidInfo_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_skidInfo_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 711 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#68>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_steering_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_steering_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_steering_set'_ a1' a2' >>
  return ()

{-# LINE 715 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#68>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_steering_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_steering_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_steering_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 719 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#111>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_suspensionRelativeVelocity_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_suspensionRelativeVelocity_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_suspensionRelativeVelocity_set'_ a1' a2' >>
  return ()

{-# LINE 723 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#111>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_suspensionRelativeVelocity_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_suspensionRelativeVelocity_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_suspensionRelativeVelocity_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 727 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#60>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_suspensionRestLength1_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_suspensionRestLength1_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_suspensionRestLength1_set'_ a1' a2' >>
  return ()

{-# LINE 731 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#60>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_suspensionRestLength1_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_suspensionRestLength1_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_suspensionRestLength1_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 735 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#64>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_suspensionStiffness_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_suspensionStiffness_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_suspensionStiffness_set'_ a1' a2' >>
  return ()

{-# LINE 739 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#64>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_suspensionStiffness_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_suspensionStiffness_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_suspensionStiffness_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 743 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#59>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelAxleCS_set :: ( BtWheelInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_m_wheelAxleCS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_m_wheelAxleCS_set'_ a1' a2' >>
  return ()

{-# LINE 747 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#59>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelAxleCS_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_m_wheelAxleCS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_m_wheelAxleCS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 751 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#58>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelDirectionCS_set :: ( BtWheelInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfo_m_wheelDirectionCS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfo_m_wheelDirectionCS_set'_ a1' a2' >>
  return ()

{-# LINE 755 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#58>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelDirectionCS_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfo_m_wheelDirectionCS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfo_m_wheelDirectionCS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 759 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#65>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsDampingCompression_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_wheelsDampingCompression_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_wheelsDampingCompression_set'_ a1' a2' >>
  return ()

{-# LINE 763 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#65>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsDampingCompression_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_wheelsDampingCompression_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_wheelsDampingCompression_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 767 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#66>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsDampingRelaxation_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_wheelsDampingRelaxation_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_wheelsDampingRelaxation_set'_ a1' a2' >>
  return ()

{-# LINE 771 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#66>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsDampingRelaxation_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_wheelsDampingRelaxation_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_wheelsDampingRelaxation_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 775 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#63>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsRadius_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_wheelsRadius_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_wheelsRadius_set'_ a1' a2' >>
  return ()

{-# LINE 779 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#63>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsRadius_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_wheelsRadius_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_wheelsRadius_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 783 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#113>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsSuspensionForce_set :: ( BtWheelInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfo_m_wheelsSuspensionForce_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfo_m_wheelsSuspensionForce_set'_ a1' a2' >>
  return ()

{-# LINE 787 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#113>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_wheelsSuspensionForce_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfo_m_wheelsSuspensionForce_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfo_m_wheelsSuspensionForce_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 791 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#55>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_worldTransform_set :: ( BtWheelInfoClass bc ) => (bc) -> (Transform) -> IO ()
btWheelInfo_m_worldTransform_set a1 a2 =
  withBt a1 $ \a1' -> 
  withTransform a2 $ \a2' -> 
  btWheelInfo_m_worldTransform_set'_ a1' a2' >>
  return ()

{-# LINE 795 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#55>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfo_m_worldTransform_get :: ( BtWheelInfoClass bc ) => (bc) -> IO ((Transform))
btWheelInfo_m_worldTransform_get a1 =
  withBt a1 $ \a1' -> 
  allocaTransform $ \a2' -> 
  btWheelInfo_m_worldTransform_get'_ a1' a2' >>
  peekTransform  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 799 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

-- * btWheelInfoConstructionInfo
{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#20>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo :: IO ((BtWheelInfoConstructionInfo))
btWheelInfoConstructionInfo =
  btWheelInfoConstructionInfo'_ >>= \res ->
  mkBtWheelInfoConstructionInfo res >>= \res' ->
  return (res')

{-# LINE 804 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

btWheelInfoConstructionInfo_free :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ()
btWheelInfoConstructionInfo_free a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_free'_ a1' >>
  return ()

{-# LINE 805 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#33>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_bIsFrontWheel_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Bool) -> IO ()
btWheelInfoConstructionInfo_m_bIsFrontWheel_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = C2HSImp.fromBool a2} in 
  btWheelInfoConstructionInfo_m_bIsFrontWheel_set'_ a1' a2' >>
  return ()

{-# LINE 809 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#33>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_bIsFrontWheel_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Bool))
btWheelInfoConstructionInfo_m_bIsFrontWheel_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_bIsFrontWheel_get'_ a1' >>= \res ->
  let {res' = C2HSImp.toBool res} in
  return (res')

{-# LINE 813 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#21>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_chassisConnectionCS_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfoConstructionInfo_m_chassisConnectionCS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfoConstructionInfo_m_chassisConnectionCS_set'_ a1' a2' >>
  return ()

{-# LINE 817 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#21>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_chassisConnectionCS_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfoConstructionInfo_m_chassisConnectionCS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfoConstructionInfo_m_chassisConnectionCS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 821 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#31>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_frictionSlip_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_frictionSlip_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_frictionSlip_set'_ a1' a2' >>
  return ()

{-# LINE 825 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#31>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_frictionSlip_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_frictionSlip_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_frictionSlip_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 829 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#32>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_maxSuspensionForce_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_maxSuspensionForce_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_maxSuspensionForce_set'_ a1' a2' >>
  return ()

{-# LINE 833 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#32>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_maxSuspensionForce_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_maxSuspensionForce_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_maxSuspensionForce_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 837 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#25>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_set'_ a1' a2' >>
  return ()

{-# LINE 841 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#25>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 845 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#24>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_suspensionRestLength_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_suspensionRestLength_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_suspensionRestLength_set'_ a1' a2' >>
  return ()

{-# LINE 849 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#24>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_suspensionRestLength_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_suspensionRestLength_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_suspensionRestLength_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 853 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#28>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_suspensionStiffness_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_suspensionStiffness_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_suspensionStiffness_set'_ a1' a2' >>
  return ()

{-# LINE 857 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#28>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_suspensionStiffness_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_suspensionStiffness_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_suspensionStiffness_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 861 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#23>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelAxleCS_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfoConstructionInfo_m_wheelAxleCS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfoConstructionInfo_m_wheelAxleCS_set'_ a1' a2' >>
  return ()

{-# LINE 865 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#23>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelAxleCS_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfoConstructionInfo_m_wheelAxleCS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfoConstructionInfo_m_wheelAxleCS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 869 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#22>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelDirectionCS_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Vec3) -> IO ()
btWheelInfoConstructionInfo_m_wheelDirectionCS_set a1 a2 =
  withBt a1 $ \a1' -> 
  withVec3 a2 $ \a2' -> 
  btWheelInfoConstructionInfo_m_wheelDirectionCS_set'_ a1' a2' >>
  return ()

{-# LINE 873 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#22>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelDirectionCS_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Vec3))
btWheelInfoConstructionInfo_m_wheelDirectionCS_get a1 =
  withBt a1 $ \a1' -> 
  allocaVec3 $ \a2' -> 
  btWheelInfoConstructionInfo_m_wheelDirectionCS_get'_ a1' a2' >>
  peekVec3  a2'>>= \a2'' -> 
  return (a2'')

{-# LINE 877 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#26>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelRadius_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_wheelRadius_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_wheelRadius_set'_ a1' a2' >>
  return ()

{-# LINE 881 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#26>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelRadius_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_wheelRadius_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_wheelRadius_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 885 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#29>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelsDampingCompression_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_wheelsDampingCompression_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_wheelsDampingCompression_set'_ a1' a2' >>
  return ()

{-# LINE 889 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#29>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelsDampingCompression_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_wheelsDampingCompression_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_wheelsDampingCompression_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 893 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#30>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_set :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> (Float) -> IO ()
btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_set a1 a2 =
  withBt a1 $ \a1' -> 
  let {a2' = realToFrac a2} in 
  btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_set'_ a1' a2' >>
  return ()

{-# LINE 897 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}

{- | <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.h?r=2223#30>
     <http://code.google.com/p/bullet/source/browse/trunk/src/BulletDynamics/Vehicle/btWheelInfo.cpp?r=2223>
-}
btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_get :: ( BtWheelInfoConstructionInfoClass bc ) => (bc) -> IO ((Float))
btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_get a1 =
  withBt a1 $ \a1' -> 
  btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_get'_ a1' >>= \res ->
  let {res' = realToFrac res} in
  return (res')

{-# LINE 901 "./Physics/Bullet/Raw/BulletDynamics/Vehicle.chs" #-}


foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_new"
  btWheelInfo_RaycastInfo'_ :: (IO (C2HSImp.Ptr ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_free"
  btWheelInfo_RaycastInfo_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_contactNormalWS_set"
  btWheelInfo_RaycastInfo_m_contactNormalWS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_contactNormalWS_get"
  btWheelInfo_RaycastInfo_m_contactNormalWS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_contactPointWS_set"
  btWheelInfo_RaycastInfo_m_contactPointWS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_contactPointWS_get"
  btWheelInfo_RaycastInfo_m_contactPointWS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_suspensionLength_set"
  btWheelInfo_RaycastInfo_m_suspensionLength_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_suspensionLength_get"
  btWheelInfo_RaycastInfo_m_suspensionLength_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_hardPointWS_set"
  btWheelInfo_RaycastInfo_m_hardPointWS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_hardPointWS_get"
  btWheelInfo_RaycastInfo_m_hardPointWS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_wheelDirectionWS_set"
  btWheelInfo_RaycastInfo_m_wheelDirectionWS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_wheelDirectionWS_get"
  btWheelInfo_RaycastInfo_m_wheelDirectionWS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_wheelAxleWS_set"
  btWheelInfo_RaycastInfo_m_wheelAxleWS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_wheelAxleWS_get"
  btWheelInfo_RaycastInfo_m_wheelAxleWS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_isInContact_set"
  btWheelInfo_RaycastInfo_m_isInContact_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_isInContact_get"
  btWheelInfo_RaycastInfo_m_isInContact_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_groundObject_set"
  btWheelInfo_RaycastInfo_m_groundObject_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_RaycastInfo_m_groundObject_get"
  btWheelInfo_RaycastInfo_m_groundObject_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btDefaultVehicleRaycaster_new"
  btDefaultVehicleRaycaster'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btDefaultVehicleRaycaster_free"
  btDefaultVehicleRaycaster_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btDefaultVehicleRaycaster_castRay"
  btDefaultVehicleRaycaster_castRay'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ()))))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btDefaultVehicleRaycaster_castRay"
  btDefaultVehicleRaycaster_castRay''_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ()))))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btDefaultVehicleRaycaster_m_dynamicsWorld_set"
  btDefaultVehicleRaycaster_m_dynamicsWorld_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btDefaultVehicleRaycaster_m_dynamicsWorld_get"
  btDefaultVehicleRaycaster_m_dynamicsWorld_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_new"
  btRaycastVehicle'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_free"
  btRaycastVehicle_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_updateSuspension"
  btRaycastVehicle_updateSuspension'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getRigidBody0"
  btRaycastVehicle_getRigidBody'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getRigidBody0"
  btRaycastVehicle_getRigidBody0'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getRigidBody1"
  btRaycastVehicle_getRigidBody1'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getUserConstraintId"
  btRaycastVehicle_getUserConstraintId'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_defaultInit"
  btRaycastVehicle_defaultInit'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getWheelTransformWS"
  btRaycastVehicle_getWheelTransformWS'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_addWheel"
  btRaycastVehicle_addWheel'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (C2HSImp.CFloat -> (C2HSImp.CFloat -> ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO (C2HSImp.Ptr ()))))))))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_addWheel"
  btRaycastVehicle_addWheel''_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (C2HSImp.CFloat -> (C2HSImp.CFloat -> ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO (C2HSImp.Ptr ()))))))))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_updateWheelTransform"
  btRaycastVehicle_updateWheelTransform'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (C2HSImp.CInt -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_setUserConstraintId"
  btRaycastVehicle_setUserConstraintId'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getNumWheels"
  btRaycastVehicle_getNumWheels'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_rayCast"
  btRaycastVehicle_rayCast'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat)))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getRightAxis"
  btRaycastVehicle_getRightAxis'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_applyEngineForce"
  btRaycastVehicle_applyEngineForce'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (C2HSImp.CInt -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getForwardVector"
  btRaycastVehicle_getForwardVector'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getWheelInfo0"
  btRaycastVehicle_getWheelInfo'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO (C2HSImp.Ptr ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getWheelInfo0"
  btRaycastVehicle_getWheelInfo0'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO (C2HSImp.Ptr ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getWheelInfo1"
  btRaycastVehicle_getWheelInfo1'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO (C2HSImp.Ptr ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getChassisWorldTransform"
  btRaycastVehicle_getChassisWorldTransform'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_updateWheelTransformsWS"
  btRaycastVehicle_updateWheelTransformsWS'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_resetSuspension"
  btRaycastVehicle_resetSuspension'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_setCoordinateSystem"
  btRaycastVehicle_setCoordinateSystem'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (C2HSImp.CInt -> (C2HSImp.CInt -> (IO ())))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_setUserConstraintType"
  btRaycastVehicle_setUserConstraintType'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_debugDraw"
  btRaycastVehicle_debugDraw'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_updateFriction"
  btRaycastVehicle_updateFriction'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getForwardAxis"
  btRaycastVehicle_getForwardAxis'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getSteeringValue"
  btRaycastVehicle_getSteeringValue'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO C2HSImp.CFloat)))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getUserConstraintType"
  btRaycastVehicle_getUserConstraintType'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getUpAxis"
  btRaycastVehicle_getUpAxis'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_setPitchControl"
  btRaycastVehicle_setPitchControl'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_getCurrentSpeedKmHour"
  btRaycastVehicle_getCurrentSpeedKmHour'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_setBrake"
  btRaycastVehicle_setBrake'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (C2HSImp.CInt -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_setSteeringValue"
  btRaycastVehicle_setSteeringValue'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (C2HSImp.CInt -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_updateVehicle"
  btRaycastVehicle_updateVehicle'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_updateAction"
  btRaycastVehicle_updateAction'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_forwardWS_set"
  btRaycastVehicle_m_forwardWS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_forwardWS_get"
  btRaycastVehicle_m_forwardWS_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_axle_set"
  btRaycastVehicle_m_axle_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_axle_get"
  btRaycastVehicle_m_axle_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_forwardImpulse_set"
  btRaycastVehicle_m_forwardImpulse_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_forwardImpulse_get"
  btRaycastVehicle_m_forwardImpulse_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_sideImpulse_set"
  btRaycastVehicle_m_sideImpulse_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_sideImpulse_get"
  btRaycastVehicle_m_sideImpulse_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_userConstraintType_set"
  btRaycastVehicle_m_userConstraintType_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_userConstraintType_get"
  btRaycastVehicle_m_userConstraintType_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_userConstraintId_set"
  btRaycastVehicle_m_userConstraintId_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_userConstraintId_get"
  btRaycastVehicle_m_userConstraintId_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_tau_set"
  btRaycastVehicle_m_tau_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_tau_get"
  btRaycastVehicle_m_tau_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_damping_set"
  btRaycastVehicle_m_damping_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_damping_get"
  btRaycastVehicle_m_damping_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_vehicleRaycaster_set"
  btRaycastVehicle_m_vehicleRaycaster_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_vehicleRaycaster_get"
  btRaycastVehicle_m_vehicleRaycaster_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_pitchControl_set"
  btRaycastVehicle_m_pitchControl_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_pitchControl_get"
  btRaycastVehicle_m_pitchControl_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_steeringValue_set"
  btRaycastVehicle_m_steeringValue_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_steeringValue_get"
  btRaycastVehicle_m_steeringValue_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_currentVehicleSpeedKmHour_set"
  btRaycastVehicle_m_currentVehicleSpeedKmHour_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_currentVehicleSpeedKmHour_get"
  btRaycastVehicle_m_currentVehicleSpeedKmHour_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_chassisBody_set"
  btRaycastVehicle_m_chassisBody_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_chassisBody_get"
  btRaycastVehicle_m_chassisBody_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_indexRightAxis_set"
  btRaycastVehicle_m_indexRightAxis_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_indexRightAxis_get"
  btRaycastVehicle_m_indexRightAxis_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_indexUpAxis_set"
  btRaycastVehicle_m_indexUpAxis_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_indexUpAxis_get"
  btRaycastVehicle_m_indexUpAxis_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_indexForwardAxis_set"
  btRaycastVehicle_m_indexForwardAxis_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_indexForwardAxis_get"
  btRaycastVehicle_m_indexForwardAxis_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_wheelInfo_set"
  btRaycastVehicle_m_wheelInfo_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_m_wheelInfo_get"
  btRaycastVehicle_m_wheelInfo_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_castRay"
  btVehicleRaycaster_castRay'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ()))))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_castRay"
  btVehicleRaycaster_castRay''_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ()))))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_new"
  btVehicleRaycaster_btVehicleRaycasterResult'_ :: (IO (C2HSImp.Ptr ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_free"
  btVehicleRaycaster_btVehicleRaycasterResult_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_set"
  btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_get"
  btVehicleRaycaster_btVehicleRaycasterResult_m_distFraction_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_set"
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_get"
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitNormalInWorld_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_set"
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_get"
  btVehicleRaycaster_btVehicleRaycasterResult_m_hitPointInWorld_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_new"
  btRaycastVehicle_btVehicleTuning'_ :: (IO (C2HSImp.Ptr ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_free"
  btRaycastVehicle_btVehicleTuning_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_frictionSlip_set"
  btRaycastVehicle_btVehicleTuning_m_frictionSlip_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_frictionSlip_get"
  btRaycastVehicle_btVehicleTuning_m_frictionSlip_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_set"
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_get"
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionForce_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_set"
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_get"
  btRaycastVehicle_btVehicleTuning_m_maxSuspensionTravelCm_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_suspensionCompression_set"
  btRaycastVehicle_btVehicleTuning_m_suspensionCompression_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_suspensionCompression_get"
  btRaycastVehicle_btVehicleTuning_m_suspensionCompression_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_suspensionDamping_set"
  btRaycastVehicle_btVehicleTuning_m_suspensionDamping_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_suspensionDamping_get"
  btRaycastVehicle_btVehicleTuning_m_suspensionDamping_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_set"
  btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_get"
  btRaycastVehicle_btVehicleTuning_m_suspensionStiffness_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_new"
  btWheelInfo'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_free"
  btWheelInfo_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_getSuspensionRestLength"
  btWheelInfo_getSuspensionRestLength'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_updateWheel"
  btWheelInfo_updateWheel'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ()))))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_bIsFrontWheel_set"
  btWheelInfo_m_bIsFrontWheel_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_bIsFrontWheel_get"
  btWheelInfo_m_bIsFrontWheel_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_brake_set"
  btWheelInfo_m_brake_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_brake_get"
  btWheelInfo_m_brake_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_chassisConnectionPointCS_set"
  btWheelInfo_m_chassisConnectionPointCS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_chassisConnectionPointCS_get"
  btWheelInfo_m_chassisConnectionPointCS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_clientInfo_set"
  btWheelInfo_m_clientInfo_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_clientInfo_get"
  btWheelInfo_m_clientInfo_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_clippedInvContactDotSuspension_set"
  btWheelInfo_m_clippedInvContactDotSuspension_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_clippedInvContactDotSuspension_get"
  btWheelInfo_m_clippedInvContactDotSuspension_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_deltaRotation_set"
  btWheelInfo_m_deltaRotation_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_deltaRotation_get"
  btWheelInfo_m_deltaRotation_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_engineForce_set"
  btWheelInfo_m_engineForce_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_engineForce_get"
  btWheelInfo_m_engineForce_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_frictionSlip_set"
  btWheelInfo_m_frictionSlip_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_frictionSlip_get"
  btWheelInfo_m_frictionSlip_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_maxSuspensionForce_set"
  btWheelInfo_m_maxSuspensionForce_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_maxSuspensionForce_get"
  btWheelInfo_m_maxSuspensionForce_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_maxSuspensionTravelCm_set"
  btWheelInfo_m_maxSuspensionTravelCm_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_maxSuspensionTravelCm_get"
  btWheelInfo_m_maxSuspensionTravelCm_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_raycastInfo_set"
  btWheelInfo_m_raycastInfo_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_raycastInfo_get"
  btWheelInfo_m_raycastInfo_get'_ :: ((C2HSImp.Ptr ()) -> (IO (C2HSImp.Ptr ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_rollInfluence_set"
  btWheelInfo_m_rollInfluence_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_rollInfluence_get"
  btWheelInfo_m_rollInfluence_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_rotation_set"
  btWheelInfo_m_rotation_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_rotation_get"
  btWheelInfo_m_rotation_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_skidInfo_set"
  btWheelInfo_m_skidInfo_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_skidInfo_get"
  btWheelInfo_m_skidInfo_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_steering_set"
  btWheelInfo_m_steering_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_steering_get"
  btWheelInfo_m_steering_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_suspensionRelativeVelocity_set"
  btWheelInfo_m_suspensionRelativeVelocity_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_suspensionRelativeVelocity_get"
  btWheelInfo_m_suspensionRelativeVelocity_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_suspensionRestLength1_set"
  btWheelInfo_m_suspensionRestLength1_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_suspensionRestLength1_get"
  btWheelInfo_m_suspensionRestLength1_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_suspensionStiffness_set"
  btWheelInfo_m_suspensionStiffness_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_suspensionStiffness_get"
  btWheelInfo_m_suspensionStiffness_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelAxleCS_set"
  btWheelInfo_m_wheelAxleCS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelAxleCS_get"
  btWheelInfo_m_wheelAxleCS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelDirectionCS_set"
  btWheelInfo_m_wheelDirectionCS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelDirectionCS_get"
  btWheelInfo_m_wheelDirectionCS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsDampingCompression_set"
  btWheelInfo_m_wheelsDampingCompression_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsDampingCompression_get"
  btWheelInfo_m_wheelsDampingCompression_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsDampingRelaxation_set"
  btWheelInfo_m_wheelsDampingRelaxation_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsDampingRelaxation_get"
  btWheelInfo_m_wheelsDampingRelaxation_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsRadius_set"
  btWheelInfo_m_wheelsRadius_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsRadius_get"
  btWheelInfo_m_wheelsRadius_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsSuspensionForce_set"
  btWheelInfo_m_wheelsSuspensionForce_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_wheelsSuspensionForce_get"
  btWheelInfo_m_wheelsSuspensionForce_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_worldTransform_set"
  btWheelInfo_m_worldTransform_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfo_m_worldTransform_get"
  btWheelInfo_m_worldTransform_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_new"
  btWheelInfoConstructionInfo'_ :: (IO (C2HSImp.Ptr ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_free"
  btWheelInfoConstructionInfo_free'_ :: ((C2HSImp.Ptr ()) -> (IO ()))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_bIsFrontWheel_set"
  btWheelInfoConstructionInfo_m_bIsFrontWheel_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CInt -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_bIsFrontWheel_get"
  btWheelInfoConstructionInfo_m_bIsFrontWheel_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_chassisConnectionCS_set"
  btWheelInfoConstructionInfo_m_chassisConnectionCS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_chassisConnectionCS_get"
  btWheelInfoConstructionInfo_m_chassisConnectionCS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_frictionSlip_set"
  btWheelInfoConstructionInfo_m_frictionSlip_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_frictionSlip_get"
  btWheelInfoConstructionInfo_m_frictionSlip_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_maxSuspensionForce_set"
  btWheelInfoConstructionInfo_m_maxSuspensionForce_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_maxSuspensionForce_get"
  btWheelInfoConstructionInfo_m_maxSuspensionForce_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_set"
  btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_get"
  btWheelInfoConstructionInfo_m_maxSuspensionTravelCm_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_suspensionRestLength_set"
  btWheelInfoConstructionInfo_m_suspensionRestLength_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_suspensionRestLength_get"
  btWheelInfoConstructionInfo_m_suspensionRestLength_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_suspensionStiffness_set"
  btWheelInfoConstructionInfo_m_suspensionStiffness_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_suspensionStiffness_get"
  btWheelInfoConstructionInfo_m_suspensionStiffness_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelAxleCS_set"
  btWheelInfoConstructionInfo_m_wheelAxleCS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelAxleCS_get"
  btWheelInfoConstructionInfo_m_wheelAxleCS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelDirectionCS_set"
  btWheelInfoConstructionInfo_m_wheelDirectionCS_set'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelDirectionCS_get"
  btWheelInfoConstructionInfo_m_wheelDirectionCS_get'_ :: ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr C2HSImp.CFloat) -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelRadius_set"
  btWheelInfoConstructionInfo_m_wheelRadius_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelRadius_get"
  btWheelInfoConstructionInfo_m_wheelRadius_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelsDampingCompression_set"
  btWheelInfoConstructionInfo_m_wheelsDampingCompression_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelsDampingCompression_get"
  btWheelInfoConstructionInfo_m_wheelsDampingCompression_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_set"
  btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_set'_ :: ((C2HSImp.Ptr ()) -> (C2HSImp.CFloat -> (IO ())))

foreign import ccall safe "Physics/Bullet/Raw/BulletDynamics/Vehicle.chs.h btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_get"
  btWheelInfoConstructionInfo_m_wheelsDampingRelaxation_get'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CFloat))