module CV.Bindings.Iterators where
import Foreign.Ptr
import CV.Bindings.Types
import CV.Image(BareImage)
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
data C'F32_image_iterator = C'F32_image_iterator{
c'F32_image_iterator'image_data :: Ptr Float
} deriving (Eq,Show)
p'F32_image_iterator'image_data p = plusPtr p 0
p'F32_image_iterator'image_data :: Ptr (C'F32_image_iterator) -> Ptr (Ptr Float)
instance Storable C'F32_image_iterator where
sizeOf _ = 36
alignment _ = 4
peek p = do
v0 <- peekByteOff p 0
return $ C'F32_image_iterator v0
poke p (C'F32_image_iterator v0) = do
pokeByteOff p 0 v0
return ()
foreign import ccall "alloc_F32_image_iterator" c'alloc_F32_image_iterator
:: IO (Ptr C'F32_image_iterator)
foreign import ccall "&alloc_F32_image_iterator" p'alloc_F32_image_iterator
:: FunPtr (IO (Ptr C'F32_image_iterator))
foreign import ccall "free_F32_image_iterator" c'free_F32_image_iterator
:: Ptr C'F32_image_iterator -> IO ()
foreign import ccall "&free_F32_image_iterator" p'free_F32_image_iterator
:: FunPtr (Ptr C'F32_image_iterator -> IO ())
foreign import ccall "F32_create_rowwise_iterator" c'F32_create_rowwise_iterator
:: Ptr C'F32_image_iterator -> Ptr BareImage -> IO ()
foreign import ccall "&F32_create_rowwise_iterator" p'F32_create_rowwise_iterator
:: FunPtr (Ptr C'F32_image_iterator -> Ptr BareImage -> IO ())
foreign import ccall "F32_next" c'F32_next
:: Ptr C'F32_image_iterator -> IO (Ptr C'F32_image_iterator)
foreign import ccall "&F32_next" p'F32_next
:: FunPtr (Ptr C'F32_image_iterator -> IO (Ptr C'F32_image_iterator))
foreign import ccall "F32_val" c'F32_val
:: Ptr C'F32_image_iterator -> Ptr CFloat
foreign import ccall "&F32_val" p'F32_val
:: FunPtr (Ptr C'F32_image_iterator -> Ptr CFloat)
foreign import ccall "F32_rowwise_pos" c'F32_rowwise_pos
:: Ptr C'F32_image_iterator -> Ptr C'CvPoint
foreign import ccall "&F32_rowwise_pos" p'F32_rowwise_pos
:: FunPtr (Ptr C'F32_image_iterator -> Ptr C'CvPoint)