{-# LINE 1 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}

{-# LINE 2 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}

{-# LINE 3 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}

-- | <http://gts.sourceforge.net/reference/gts-isosurfaces-from-3d-functions.html>

module Bindings.Gts.SurfaceOperations.IsosurfacesFrom3dFunctions where
import Bindings.GLib
import Bindings.Gts.Types
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

{-# LINE 10 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}

foreign import ccall "gts_grid_plane_new" c'gts_grid_plane_new
  :: C'guint -> C'guint -> IO (Ptr C'GtsGridPlane)
foreign import ccall "&gts_grid_plane_new" p'gts_grid_plane_new
  :: FunPtr (C'guint -> C'guint -> IO (Ptr C'GtsGridPlane))

{-# LINE 12 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}
foreign import ccall "gts_grid_plane_destroy" c'gts_grid_plane_destroy
  :: Ptr C'GtsGridPlane -> IO ()
foreign import ccall "&gts_grid_plane_destroy" p'gts_grid_plane_destroy
  :: FunPtr (Ptr C'GtsGridPlane -> IO ())

{-# LINE 13 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}

foreign import ccall "gts_iso_slice_new" c'gts_iso_slice_new
  :: C'guint -> C'guint -> IO (Ptr C'GtsIsoSlice)
foreign import ccall "&gts_iso_slice_new" p'gts_iso_slice_new
  :: FunPtr (C'guint -> C'guint -> IO (Ptr C'GtsIsoSlice))

{-# LINE 15 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}
foreign import ccall "gts_iso_slice_fill" c'gts_iso_slice_fill
  :: Ptr C'GtsIsoSlice -> Ptr C'GtsGridPlane -> Ptr C'GtsGridPlane -> Ptr (Ptr C'gdouble) -> Ptr (Ptr C'gdouble) -> C'gdouble -> Ptr C'GtsVertexClass -> IO ()
foreign import ccall "&gts_iso_slice_fill" p'gts_iso_slice_fill
  :: FunPtr (Ptr C'GtsIsoSlice -> Ptr C'GtsGridPlane -> Ptr C'GtsGridPlane -> Ptr (Ptr C'gdouble) -> Ptr (Ptr C'gdouble) -> C'gdouble -> Ptr C'GtsVertexClass -> IO ())

{-# LINE 16 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}
foreign import ccall "gts_iso_slice_destroy" c'gts_iso_slice_destroy
  :: Ptr C'GtsIsoSlice -> IO ()
foreign import ccall "&gts_iso_slice_destroy" p'gts_iso_slice_destroy
  :: FunPtr (Ptr C'GtsIsoSlice -> IO ())

{-# LINE 17 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}
foreign import ccall "gts_isosurface_slice" c'gts_isosurface_slice
  :: Ptr C'GtsIsoSlice -> Ptr C'GtsIsoSlice -> Ptr C'GtsSurface -> IO ()
foreign import ccall "&gts_isosurface_slice" p'gts_isosurface_slice
  :: FunPtr (Ptr C'GtsIsoSlice -> Ptr C'GtsIsoSlice -> Ptr C'GtsSurface -> IO ())

{-# LINE 18 "src/Bindings/Gts/SurfaceOperations/IsosurfacesFrom3dFunctions.hsc" #-}