{-# LINE 1 "./Foreign/CUDA/Solver/Dense/Analysis.chs" #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE EmptyDataDecls #-}
{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE TemplateHaskell #-}
module Foreign.CUDA.Solver.Dense.Analysis (
Info_gesvdj(..), createInfo_gesvdj, destroyInfo_gesvdj,
Info_syevj(..), createInfo_syevj, destroyInfo_syevj,
) where
import qualified Foreign.C.Types as C2HSImp
import qualified Foreign.Ptr as C2HSImp
import Foreign.CUDA.Solver.Error
import Foreign.CUDA.Solver.Internal.C2HS
import Foreign
import Foreign.C
import Control.Monad ( liftM )
{-# LINE 32 "./Foreign/CUDA/Solver/Dense/Analysis.chs" #-}
newtype Info_gesvdj = Info_gesvdj { useInfo_gesvdj :: ((C2HSImp.Ptr ()))}
{-# INLINEABLE createInfo_gesvdj #-}
createInfo_gesvdj :: IO ((Info_gesvdj))
createInfo_gesvdj =
alloca $ \a1' ->
createInfo_gesvdj'_ a1' >>= \res ->
checkStatus res >>
peekI a1'>>= \a1'' ->
return (a1'')
{-# LINE 40 "./Foreign/CUDA/Solver/Dense/Analysis.chs" #-}
where
peekI = liftM Info_gesvdj . peek
{-# INLINEABLE destroyInfo_gesvdj #-}
destroyInfo_gesvdj :: (Info_gesvdj) -> IO ((()))
destroyInfo_gesvdj a1 =
let {a1' = useInfo_gesvdj a1} in
destroyInfo_gesvdj'_ a1' >>= \res ->
checkStatus res >>= \res' ->
return (res')
{-# LINE 46 "./Foreign/CUDA/Solver/Dense/Analysis.chs" #-}
newtype Info_syevj = Info_syevj { useInfo_syevj :: ((C2HSImp.Ptr ()))}
{-# INLINEABLE createInfo_syevj #-}
createInfo_syevj :: IO ((Info_syevj))
createInfo_syevj =
alloca $ \a1' ->
createInfo_syevj'_ a1' >>= \res ->
checkStatus res >>
peekI a1'>>= \a1'' ->
return (a1'')
{-# LINE 63 "./Foreign/CUDA/Solver/Dense/Analysis.chs" #-}
where
peekI = liftM Info_syevj . peek
{-# INLINEABLE destroyInfo_syevj #-}
destroyInfo_syevj :: (Info_syevj) -> IO ((()))
destroyInfo_syevj a1 =
let {a1' = useInfo_syevj a1} in
destroyInfo_syevj'_ a1' >>= \res ->
checkStatus res >>= \res' ->
return (res')
{-# LINE 69 "./Foreign/CUDA/Solver/Dense/Analysis.chs" #-}
foreign import ccall unsafe "Foreign/CUDA/Solver/Dense/Analysis.chs.h cusolverDnCreateGesvdjInfo"
createInfo_gesvdj'_ :: ((C2HSImp.Ptr (C2HSImp.Ptr ())) -> (IO C2HSImp.CInt))
foreign import ccall unsafe "Foreign/CUDA/Solver/Dense/Analysis.chs.h cusolverDnDestroyGesvdjInfo"
destroyInfo_gesvdj'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))
foreign import ccall unsafe "Foreign/CUDA/Solver/Dense/Analysis.chs.h cusolverDnCreateSyevjInfo"
createInfo_syevj'_ :: ((C2HSImp.Ptr (C2HSImp.Ptr ())) -> (IO C2HSImp.CInt))
foreign import ccall unsafe "Foreign/CUDA/Solver/Dense/Analysis.chs.h cusolverDnDestroySyevjInfo"
destroyInfo_syevj'_ :: ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))