{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module GDAL.OGRMultiSurface.Implementation where import Data.Monoid import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import Language.Haskell.TH import Language.Haskell.TH.Syntax import System.IO.Unsafe import FFICXX.Runtime.Cast import FFICXX.Runtime.CodeGen.Cxx import FFICXX.Runtime.TH import GDAL.OGRMultiSurface.RawType import GDAL.OGRMultiSurface.FFI import GDAL.OGRMultiSurface.Interface import GDAL.OGRMultiSurface.Cast import GDAL.OGRMultiSurface.RawType import GDAL.OGRMultiSurface.Cast import GDAL.OGRMultiSurface.Interface import GDAL.OGRPolygon.RawType import GDAL.OGRPolygon.Cast import GDAL.OGRPolygon.Interface import GDAL.OGRMultiPolygon.RawType import GDAL.OGRMultiPolygon.Cast import GDAL.OGRMultiPolygon.Interface import GDAL.OGREnvelope.RawType import GDAL.OGREnvelope.Cast import GDAL.OGREnvelope.Interface import GDAL.OGRPoint.RawType import GDAL.OGRPoint.Cast import GDAL.OGRPoint.Interface import GDAL.OGRGeometryCollection.RawType import GDAL.OGRGeometryCollection.Cast import GDAL.OGRGeometryCollection.Interface import GDAL.OGRGeometry.RawType import GDAL.OGRGeometry.Cast import GDAL.OGRGeometry.Interface import STD.Deletable.RawType import STD.Deletable.Cast import STD.Deletable.Interface instance () => IOGRMultiSurface (OGRMultiSurface) where instance () => IOGRGeometryCollection (OGRMultiSurface) where instance () => IOGRGeometry (OGRMultiSurface) where getGeometryType :: OGRMultiSurface -> IO CUInt getGeometryType = (Ptr RawOGRMultiSurface -> IO CUInt) -> OGRMultiSurface -> IO CUInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiSurface -> IO CUInt c_ogrmultisurface_getgeometrytype getEnvelope :: forall c0. (IOGREnvelope c0, FPtr c0) => OGRMultiSurface -> c0 -> IO () getEnvelope = (Ptr RawOGRMultiSurface -> Ptr RawOGREnvelope -> IO ()) -> OGRMultiSurface -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGREnvelope -> IO () c_ogrmultisurface_getenvelope intersects :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool intersects = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_intersects equals :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool equals = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_equals disjoint :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool disjoint = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_disjoint touches :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool touches = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_touches crosses :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool crosses = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_crosses within :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool within = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_within contains :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool contains = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_contains overlaps :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CBool overlaps = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiSurface -> c0 -> IO CBool forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CBool c_ogrmultisurface_overlaps boundary :: OGRMultiSurface -> IO OGRGeometry boundary = (Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_boundary distance :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CDouble distance = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CDouble) -> OGRMultiSurface -> c0 -> IO CDouble forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CDouble c_ogrmultisurface_distance convexHull :: OGRMultiSurface -> IO OGRGeometry convexHull = (Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_convexhull buffer :: OGRMultiSurface -> CDouble -> CInt -> IO OGRGeometry buffer = (Ptr RawOGRMultiSurface -> CDouble -> CInt -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> CDouble -> CInt -> IO OGRGeometry forall a ca x1 cx1 x2 cx2 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable y cy) => (ca -> cx1 -> cx2 -> IO cy) -> a -> x1 -> x2 -> IO y xform2 Ptr RawOGRMultiSurface -> CDouble -> CInt -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_buffer intersection :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO OGRGeometry intersection = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> c0 -> IO OGRGeometry forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_intersection union :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO OGRGeometry union = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> c0 -> IO OGRGeometry forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_union unionCascaded :: OGRMultiSurface -> IO OGRGeometry unionCascaded = (Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_unioncascaded difference :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO OGRGeometry difference = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> c0 -> IO OGRGeometry forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_difference symDifference :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO OGRGeometry symDifference = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> c0 -> IO OGRGeometry forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_symdifference centroid :: forall c0. (IOGRPoint c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CInt centroid = (Ptr RawOGRMultiSurface -> Ptr RawOGRPoint -> IO CInt) -> OGRMultiSurface -> c0 -> IO CInt forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRPoint -> IO CInt c_ogrmultisurface_centroid simplify :: OGRMultiSurface -> CDouble -> IO OGRGeometry simplify = (Ptr RawOGRMultiSurface -> CDouble -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> CDouble -> IO OGRGeometry forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> CDouble -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_simplify delaunayTriangulation :: OGRMultiSurface -> CDouble -> CInt -> IO OGRGeometry delaunayTriangulation = (Ptr RawOGRMultiSurface -> CDouble -> CInt -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> CDouble -> CInt -> IO OGRGeometry forall a ca x1 cx1 x2 cx2 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable y cy) => (ca -> cx1 -> cx2 -> IO cy) -> a -> x1 -> x2 -> IO y xform2 Ptr RawOGRMultiSurface -> CDouble -> CInt -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_delaunaytriangulation polygonize :: OGRMultiSurface -> IO OGRGeometry polygonize = (Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry)) -> OGRMultiSurface -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiSurface -> IO (Ptr RawOGRGeometry) c_ogrmultisurface_polygonize distance3D :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiSurface -> c0 -> IO CDouble distance3D = (Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CDouble) -> OGRMultiSurface -> c0 -> IO CDouble forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawOGRMultiSurface -> Ptr RawOGRGeometry -> IO CDouble c_ogrmultisurface_distance3d instance () => IDeletable (OGRMultiSurface) where delete :: OGRMultiSurface -> IO () delete = (Ptr RawOGRMultiSurface -> IO ()) -> OGRMultiSurface -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiSurface -> IO () c_ogrmultisurface_delete