{-# LINE 1 "src/GDAL/OGRLayer/FFI.hsc" #-}
{-# LANGUAGE ForeignFunctionInterface, InterruptibleFFI #-}
module GDAL.OGRLayer.FFI where
import Data.Word
import Data.Int
import Foreign.C
import Foreign.Ptr
import GDAL.OGRLayer.RawType
import GDAL.OGRLayer.RawType
import GDAL.OGRFeature.RawType
import GDAL.OGRFeatureDefn.RawType

foreign import ccall interruptible
               "HGDALOGRLayer.h OGRLayer_delete" c_ogrlayer_delete ::
               Ptr RawOGRLayer -> IO ()

foreign import ccall interruptible
               "HGDALOGRLayer.h OGRLayer_GetFeature" c_ogrlayer_getfeature ::
               Ptr RawOGRLayer -> CInt -> IO (Ptr RawOGRFeature)

foreign import ccall interruptible
               "HGDALOGRLayer.h OGRLayer_GetFeatureCount"
               c_ogrlayer_getfeaturecount :: Ptr RawOGRLayer -> CInt -> IO CInt

foreign import ccall interruptible
               "HGDALOGRLayer.h OGRLayer_GetLayerDefn" c_ogrlayer_getlayerdefn ::
               Ptr RawOGRLayer -> IO (Ptr RawOGRFeatureDefn)

foreign import ccall interruptible
               "HGDALOGRLayer.h OGRLayer_GetNextFeature" c_ogrlayer_getnextfeature
               :: Ptr RawOGRLayer -> IO (Ptr RawOGRFeature)

foreign import ccall interruptible
               "HGDALOGRLayer.h OGRLayer_ResetReading" c_ogrlayer_resetreading ::
               Ptr RawOGRLayer -> IO ()