module HGamer3D.Bindings.Bullet.ClassDynamicsWorld where
import Foreign
import Foreign.Ptr
import Foreign.C
import HGamer3D.Data.HG3DClass
import HGamer3D.Data.Vector
import HGamer3D.Data.Colour
import HGamer3D.Data.Angle
import HGamer3D.Bindings.Bullet.Utils
import HGamer3D.Bindings.Bullet.ClassPtr
import HGamer3D.Bindings.Bullet.StructHG3DClass
import HGamer3D.Bindings.Bullet.StructVec3
delete :: HG3DClass -> IO ()
delete a1 =
withHG3DClass a1 $ \a1' ->
delete'_ a1' >>= \res ->
return ()
stepSimulation :: HG3DClass -> Float -> Int -> Float -> IO (Int)
stepSimulation a1 a2 a3 a4 =
withHG3DClass a1 $ \a1' ->
let {a2' = realToFrac a2} in
let {a3' = fromIntegral a3} in
let {a4' = realToFrac a4} in
alloca $ \a5' ->
stepSimulation'_ a1' a2' a3' a4' a5' >>= \res ->
peekIntConv a5'>>= \a5'' ->
return (a5'')
debugDrawWorld :: HG3DClass -> IO ()
debugDrawWorld a1 =
withHG3DClass a1 $ \a1' ->
debugDrawWorld'_ a1' >>= \res ->
return ()
addAction :: HG3DClass -> HG3DClass -> IO ()
addAction a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
addAction'_ a1' a2' >>= \res ->
return ()
removeAction :: HG3DClass -> HG3DClass -> IO ()
removeAction a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
removeAction'_ a1' a2' >>= \res ->
return ()
setGravity :: HG3DClass -> Vec3 -> IO ()
setGravity a1 a2 =
withHG3DClass a1 $ \a1' ->
withVec3 a2 $ \a2' ->
setGravity'_ a1' a2' >>= \res ->
return ()
getGravity :: HG3DClass -> IO (Vec3)
getGravity a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getGravity'_ a1' a2' >>= \res ->
peekVec3 a2'>>= \a2'' ->
return (a2'')
synchronizeMotionStates :: HG3DClass -> IO ()
synchronizeMotionStates a1 =
withHG3DClass a1 $ \a1' ->
synchronizeMotionStates'_ a1' >>= \res ->
return ()
addRigidBody :: HG3DClass -> HG3DClass -> IO ()
addRigidBody a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
addRigidBody'_ a1' a2' >>= \res ->
return ()
removeRigidBody :: HG3DClass -> HG3DClass -> IO ()
removeRigidBody a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
removeRigidBody'_ a1' a2' >>= \res ->
return ()
getNumConstraints :: HG3DClass -> IO (Int)
getNumConstraints a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getNumConstraints'_ a1' a2' >>= \res ->
peekIntConv a2'>>= \a2'' ->
return (a2'')
clearForces :: HG3DClass -> IO ()
clearForces a1 =
withHG3DClass a1 $ \a1' ->
clearForces'_ a1' >>= \res ->
return ()
addVehicle :: HG3DClass -> HG3DClass -> IO ()
addVehicle a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
addVehicle'_ a1' a2' >>= \res ->
return ()
removeVehicle :: HG3DClass -> HG3DClass -> IO ()
removeVehicle a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
removeVehicle'_ a1' a2' >>= \res ->
return ()
addCharacter :: HG3DClass -> HG3DClass -> IO ()
addCharacter a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
addCharacter'_ a1' a2' >>= \res ->
return ()
removeCharacter :: HG3DClass -> HG3DClass -> IO ()
removeCharacter a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
removeCharacter'_ a1' a2' >>= \res ->
return ()
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_destruct"
delete'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_stepSimulation"
stepSimulation'_ :: ((HG3DClassPtr) -> (CFloat -> (CInt -> (CFloat -> ((Ptr CInt) -> (IO ()))))))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_debugDrawWorld"
debugDrawWorld'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_addAction"
addAction'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_removeAction"
removeAction'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_setGravity"
setGravity'_ :: ((HG3DClassPtr) -> ((Vec3Ptr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_getGravity"
getGravity'_ :: ((HG3DClassPtr) -> ((Vec3Ptr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_synchronizeMotionStates"
synchronizeMotionStates'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_addRigidBody"
addRigidBody'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_removeRigidBody"
removeRigidBody'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_getNumConstraints"
getNumConstraints'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_clearForces"
clearForces'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_addVehicle"
addVehicle'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_removeVehicle"
removeVehicle'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_addCharacter"
addCharacter'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassDynamicsWorld.chs.h bt_dnmcwrld_removeCharacter"
removeCharacter'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))