module Box2D.WeldJoint
( create
, setLinearHertz
, getLinearHertz
, setLinearDampingRatio
, getLinearDampingRatio
, setAngularHertz
, getAngularHertz
, setAngularDampingRatio
, getAngularDampingRatio
)
where
import Foreign
import Box2D.Id (JointId(..), WorldId(..))
import Box2D.Types (WeldJointDef)
foreign import ccall unsafe "b2CreateWeldJoint"
c_b2CreateWeldJoint :: WorldId -> Ptr WeldJointDef -> IO JointId
foreign import ccall unsafe "b2WeldJoint_SetLinearHertz"
c_b2WeldJoint_SetLinearHertz :: JointId -> Float -> IO ()
foreign import ccall unsafe "b2WeldJoint_GetLinearHertz"
c_b2WeldJoint_GetLinearHertz :: JointId -> IO Float
foreign import ccall unsafe "b2WeldJoint_SetLinearDampingRatio"
c_b2WeldJoint_SetLinearDampingRatio :: JointId -> Float -> IO ()
foreign import ccall unsafe "b2WeldJoint_GetLinearDampingRatio"
c_b2WeldJoint_GetLinearDampingRatio :: JointId -> IO Float
foreign import ccall unsafe "b2WeldJoint_SetAngularHertz"
c_b2WeldJoint_SetAngularHertz :: JointId -> Float -> IO ()
foreign import ccall unsafe "b2WeldJoint_GetAngularHertz"
c_b2WeldJoint_GetAngularHertz :: JointId -> IO Float
foreign import ccall unsafe "b2WeldJoint_SetAngularDampingRatio"
c_b2WeldJoint_SetAngularDampingRatio :: JointId -> Float -> IO ()
foreign import ccall unsafe "b2WeldJoint_GetAngularDampingRatio"
c_b2WeldJoint_GetAngularDampingRatio :: JointId -> IO Float
create
:: WorldId
-> WeldJointDef
-> IO JointId
create :: WorldId -> WeldJointDef -> IO JointId
create WorldId
a0 WeldJointDef
a1 =
WeldJointDef -> (Ptr WeldJointDef -> IO JointId) -> IO JointId
forall a b. Storable a => a -> (Ptr a -> IO b) -> IO b
with WeldJointDef
a1 ((Ptr WeldJointDef -> IO JointId) -> IO JointId)
-> (Ptr WeldJointDef -> IO JointId) -> IO JointId
forall a b. (a -> b) -> a -> b
$ \Ptr WeldJointDef
p1 ->
WorldId -> Ptr WeldJointDef -> IO JointId
c_b2CreateWeldJoint WorldId
a0 Ptr WeldJointDef
p1
setLinearHertz
:: JointId
-> Float
-> IO ()
setLinearHertz :: JointId -> Float -> IO ()
setLinearHertz JointId
a0 Float
a1 =
JointId -> Float -> IO ()
c_b2WeldJoint_SetLinearHertz JointId
a0 Float
a1
getLinearHertz
:: JointId
-> IO Float
getLinearHertz :: JointId -> IO Float
getLinearHertz JointId
a0 =
JointId -> IO Float
c_b2WeldJoint_GetLinearHertz JointId
a0
setLinearDampingRatio
:: JointId
-> Float
-> IO ()
setLinearDampingRatio :: JointId -> Float -> IO ()
setLinearDampingRatio JointId
a0 Float
a1 =
JointId -> Float -> IO ()
c_b2WeldJoint_SetLinearDampingRatio JointId
a0 Float
a1
getLinearDampingRatio
:: JointId
-> IO Float
getLinearDampingRatio :: JointId -> IO Float
getLinearDampingRatio JointId
a0 =
JointId -> IO Float
c_b2WeldJoint_GetLinearDampingRatio JointId
a0
setAngularHertz
:: JointId
-> Float
-> IO ()
setAngularHertz :: JointId -> Float -> IO ()
setAngularHertz JointId
a0 Float
a1 =
JointId -> Float -> IO ()
c_b2WeldJoint_SetAngularHertz JointId
a0 Float
a1
getAngularHertz
:: JointId
-> IO Float
getAngularHertz :: JointId -> IO Float
getAngularHertz JointId
a0 =
JointId -> IO Float
c_b2WeldJoint_GetAngularHertz JointId
a0
setAngularDampingRatio
:: JointId
-> Float
-> IO ()
setAngularDampingRatio :: JointId -> Float -> IO ()
setAngularDampingRatio JointId
a0 Float
a1 =
JointId -> Float -> IO ()
c_b2WeldJoint_SetAngularDampingRatio JointId
a0 Float
a1
getAngularDampingRatio
:: JointId
-> IO Float
getAngularDampingRatio :: JointId -> IO Float
getAngularDampingRatio JointId
a0 =
JointId -> IO Float
c_b2WeldJoint_GetAngularDampingRatio JointId
a0