-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell) -- Edit the ORIGNAL .chs file instead! {-# LINE 1 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE TypeSynonymInstances #-} -- This source file is part of HGamer3D -- (A project to enable 3D game development in Haskell) -- For the latest info, see http://www.althainz.de/HGamer3D.html -- -- (c) 2011, 2012 Peter Althainz -- -- Licensed under the Apache License, Version 2.0 (the "License"); -- you may not use this file except in compliance with the License. -- You may obtain a copy of the License at -- -- http://www.apache.org/licenses/LICENSE-2.0 -- -- Unless required by applicable law or agreed to in writing, software -- distributed under the License is distributed on an "AS IS" BASIS, -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- See the License for the specific language governing permissions and -- limitations under the License. -- -- ClassHG3DRigidBodyCreator.chs -- module HGamer3D.Bindings.Bullet.ClassHG3DRigidBodyCreator 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 {-# LINE 40 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} import HGamer3D.Bindings.Bullet.ClassPtr {-# LINE 41 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} import HGamer3D.Bindings.Bullet.StructHG3DClass {-# LINE 42 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} import HGamer3D.Bindings.Bullet.StructVec3 {-# LINE 43 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} import HGamer3D.Bindings.Bullet.StructQuaternion {-# LINE 44 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} {- function createSphere -} createSphere :: Float -> Vec3 -> Quaternion -> Float -> IO (HG3DClass) createSphere a1 a2 a3 a4 = let {a1' = realToFrac a1} in withVec3 a2 $ \a2' -> withQuaternion a3 $ \a3' -> let {a4' = realToFrac a4} in alloca $ \a5' -> createSphere'_ a1' a2' a3' a4' a5' >>= \res -> peek a5'>>= \a5'' -> return (a5'') {-# LINE 53 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} {- function createBox -} createBox :: Float -> Vec3 -> Quaternion -> Vec3 -> IO (HG3DClass) createBox a1 a2 a3 a4 = let {a1' = realToFrac a1} in withVec3 a2 $ \a2' -> withQuaternion a3 $ \a3' -> withVec3 a4 $ \a4' -> alloca $ \a5' -> createBox'_ a1' a2' a3' a4' a5' >>= \res -> peek a5'>>= \a5'' -> return (a5'') {-# LINE 61 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} {- function createCylinder -} createCylinder :: Float -> Vec3 -> Quaternion -> Vec3 -> IO (HG3DClass) createCylinder a1 a2 a3 a4 = let {a1' = realToFrac a1} in withVec3 a2 $ \a2' -> withQuaternion a3 $ \a3' -> withVec3 a4 $ \a4' -> alloca $ \a5' -> createCylinder'_ a1' a2' a3' a4' a5' >>= \res -> peek a5'>>= \a5'' -> return (a5'') {-# LINE 69 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} {- function createCapsule -} createCapsule :: Float -> Vec3 -> Quaternion -> Float -> Float -> IO (HG3DClass) createCapsule a1 a2 a3 a4 a5 = let {a1' = realToFrac a1} in withVec3 a2 $ \a2' -> withQuaternion a3 $ \a3' -> let {a4' = realToFrac a4} in let {a5' = realToFrac a5} in alloca $ \a6' -> createCapsule'_ a1' a2' a3' a4' a5' a6' >>= \res -> peek a6'>>= \a6'' -> return (a6'') {-# LINE 78 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} {- function createCone -} createCone :: Float -> Vec3 -> Quaternion -> Float -> Float -> IO (HG3DClass) createCone a1 a2 a3 a4 a5 = let {a1' = realToFrac a1} in withVec3 a2 $ \a2' -> withQuaternion a3 $ \a3' -> let {a4' = realToFrac a4} in let {a5' = realToFrac a5} in alloca $ \a6' -> createCone'_ a1' a2' a3' a4' a5' a6' >>= \res -> peek a6'>>= \a6'' -> return (a6'') {-# LINE 87 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} {- function createStaticPlane -} createStaticPlane :: Float -> Vec3 -> Quaternion -> Vec3 -> IO (HG3DClass) createStaticPlane a1 a2 a3 a4 = let {a1' = realToFrac a1} in withVec3 a2 $ \a2' -> withQuaternion a3 $ \a3' -> withVec3 a4 $ \a4' -> alloca $ \a5' -> createStaticPlane'_ a1' a2' a3' a4' a5' >>= \res -> peek a5'>>= \a5'' -> return (a5'') {-# LINE 95 ".\\HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs" #-} foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs.h bt_hg3drgbdcrt_createSphere" createSphere'_ :: (CFloat -> ((Vec3Ptr) -> ((QuaternionPtr) -> (CFloat -> ((HG3DClassPtr) -> (IO ())))))) foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs.h bt_hg3drgbdcrt_createBox" createBox'_ :: (CFloat -> ((Vec3Ptr) -> ((QuaternionPtr) -> ((Vec3Ptr) -> ((HG3DClassPtr) -> (IO ())))))) foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs.h bt_hg3drgbdcrt_createCylinder" createCylinder'_ :: (CFloat -> ((Vec3Ptr) -> ((QuaternionPtr) -> ((Vec3Ptr) -> ((HG3DClassPtr) -> (IO ())))))) foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs.h bt_hg3drgbdcrt_createCapsule" createCapsule'_ :: (CFloat -> ((Vec3Ptr) -> ((QuaternionPtr) -> (CFloat -> (CFloat -> ((HG3DClassPtr) -> (IO ()))))))) foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs.h bt_hg3drgbdcrt_createCone" createCone'_ :: (CFloat -> ((Vec3Ptr) -> ((QuaternionPtr) -> (CFloat -> (CFloat -> ((HG3DClassPtr) -> (IO ()))))))) foreign import ccall safe "HGamer3D\\Bindings\\Bullet\\ClassHG3DRigidBodyCreator.chs.h bt_hg3drgbdcrt_createStaticPlane" createStaticPlane'_ :: (CFloat -> ((Vec3Ptr) -> ((QuaternionPtr) -> ((Vec3Ptr) -> ((HG3DClassPtr) -> (IO ()))))))