module HGamer3D.Bindings.Bullet.ClassCollisionWorld 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
new :: HG3DClass -> HG3DClass -> HG3DClass -> IO (HG3DClass)
new a1 a2 a3 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
withHG3DClass a3 $ \a3' ->
alloca $ \a4' ->
new'_ a1' a2' a3' a4' >>= \res ->
peek a4'>>= \a4'' ->
return (a4'')
delete :: HG3DClass -> IO ()
delete a1 =
withHG3DClass a1 $ \a1' ->
delete'_ a1' >>= \res ->
return ()
setBroadphase :: HG3DClass -> HG3DClass -> IO ()
setBroadphase a1 a2 =
withHG3DClass a1 $ \a1' ->
withHG3DClass a2 $ \a2' ->
setBroadphase'_ a1' a2' >>= \res ->
return ()
getBroadphase :: HG3DClass -> IO (HG3DClass)
getBroadphase a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getBroadphase'_ a1' a2' >>= \res ->
peek a2'>>= \a2'' ->
return (a2'')
getBroadphase2 :: HG3DClass -> IO (HG3DClass)
getBroadphase2 a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getBroadphase2'_ a1' a2' >>= \res ->
peek a2'>>= \a2'' ->
return (a2'')
getDispatcher :: HG3DClass -> IO (HG3DClass)
getDispatcher a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getDispatcher'_ a1' a2' >>= \res ->
peek a2'>>= \a2'' ->
return (a2'')
getDispatcher2 :: HG3DClass -> IO (HG3DClass)
getDispatcher2 a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getDispatcher2'_ a1' a2' >>= \res ->
peek a2'>>= \a2'' ->
return (a2'')
updateAabbs :: HG3DClass -> IO ()
updateAabbs a1 =
withHG3DClass a1 $ \a1' ->
updateAabbs'_ a1' >>= \res ->
return ()
computeOverlappingPairs :: HG3DClass -> IO ()
computeOverlappingPairs a1 =
withHG3DClass a1 $ \a1' ->
computeOverlappingPairs'_ a1' >>= \res ->
return ()
debugDrawWorld :: HG3DClass -> IO ()
debugDrawWorld a1 =
withHG3DClass a1 $ \a1' ->
debugDrawWorld'_ a1' >>= \res ->
return ()
getNumCollisionObjects :: HG3DClass -> IO (Int)
getNumCollisionObjects a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getNumCollisionObjects'_ a1' a2' >>= \res ->
peekIntConv a2'>>= \a2'' ->
return (a2'')
performDiscreteCollisionDetection :: HG3DClass -> IO ()
performDiscreteCollisionDetection a1 =
withHG3DClass a1 $ \a1' ->
performDiscreteCollisionDetection'_ a1' >>= \res ->
return ()
getForceUpdateAllAabbs :: HG3DClass -> IO (Bool)
getForceUpdateAllAabbs a1 =
withHG3DClass a1 $ \a1' ->
alloca $ \a2' ->
getForceUpdateAllAabbs'_ a1' a2' >>= \res ->
peekBoolUtil a2'>>= \a2'' ->
return (a2'')
setForceUpdateAllAabbs :: HG3DClass -> Bool -> IO ()
setForceUpdateAllAabbs a1 a2 =
withHG3DClass a1 $ \a1' ->
let {a2' = fromBool a2} in
setForceUpdateAllAabbs'_ a1' a2' >>= \res ->
return ()
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_construct"
new'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_destruct"
delete'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_setBroadphase"
setBroadphase'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_getBroadphase"
getBroadphase'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_getBroadphase2"
getBroadphase2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_getDispatcher"
getDispatcher'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_getDispatcher2"
getDispatcher2'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_updateAabbs"
updateAabbs'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_computeOverlappingPairs"
computeOverlappingPairs'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_debugDrawWorld"
debugDrawWorld'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_getNumCollisionObjects"
getNumCollisionObjects'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_performDiscreteCollisionDetection"
performDiscreteCollisionDetection'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_getForceUpdateAllAabbs"
getForceUpdateAllAabbs'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassCollisionWorld.chs.h bt_cllsnwrld_setForceUpdateAllAabbs"
setForceUpdateAllAabbs'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))