{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module GDAL.OGRMultiPolygon.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.OGRMultiPolygon.RawType import GDAL.OGRMultiPolygon.FFI import GDAL.OGRMultiPolygon.Interface import GDAL.OGRMultiPolygon.Cast import GDAL.OGRMultiPolygon.RawType import GDAL.OGRMultiPolygon.Cast import GDAL.OGRMultiPolygon.Interface import GDAL.OGRPolygon.RawType import GDAL.OGRPolygon.Cast import GDAL.OGRPolygon.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.OGRMultiSurface.RawType import GDAL.OGRMultiSurface.Cast import GDAL.OGRMultiSurface.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 () => IOGRMultiPolygon (OGRMultiPolygon) where instance () => IOGRMultiSurface (OGRMultiPolygon) where instance () => IOGRGeometryCollection (OGRMultiPolygon) where instance () => IOGRGeometry (OGRMultiPolygon) where getGeometryType :: OGRMultiPolygon -> IO CUInt getGeometryType = (Ptr RawOGRMultiPolygon -> IO CUInt) -> OGRMultiPolygon -> IO CUInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiPolygon -> IO CUInt c_ogrmultipolygon_getgeometrytype getEnvelope :: forall c0. (IOGREnvelope c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO () getEnvelope = (Ptr RawOGRMultiPolygon -> Ptr RawOGREnvelope -> IO ()) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGREnvelope -> IO () c_ogrmultipolygon_getenvelope intersects :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool intersects = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_intersects equals :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool equals = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_equals disjoint :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool disjoint = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_disjoint touches :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool touches = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_touches crosses :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool crosses = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_crosses within :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool within = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_within contains :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool contains = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_contains overlaps :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CBool overlaps = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool c_ogrmultipolygon_overlaps boundary :: OGRMultiPolygon -> IO OGRGeometry boundary = (Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_boundary distance :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CDouble distance = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CDouble) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CDouble c_ogrmultipolygon_distance convexHull :: OGRMultiPolygon -> IO OGRGeometry convexHull = (Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_convexhull buffer :: OGRMultiPolygon -> CDouble -> CInt -> IO OGRGeometry buffer = (Ptr RawOGRMultiPolygon -> CDouble -> CInt -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> CDouble -> CInt -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_buffer intersection :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO OGRGeometry intersection = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_intersection union :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO OGRGeometry union = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_union unionCascaded :: OGRMultiPolygon -> IO OGRGeometry unionCascaded = (Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_unioncascaded difference :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO OGRGeometry difference = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_difference symDifference :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO OGRGeometry symDifference = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_symdifference centroid :: forall c0. (IOGRPoint c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CInt centroid = (Ptr RawOGRMultiPolygon -> Ptr RawOGRPoint -> IO CInt) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRPoint -> IO CInt c_ogrmultipolygon_centroid simplify :: OGRMultiPolygon -> CDouble -> IO OGRGeometry simplify = (Ptr RawOGRMultiPolygon -> CDouble -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> CDouble -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_simplify delaunayTriangulation :: OGRMultiPolygon -> CDouble -> CInt -> IO OGRGeometry delaunayTriangulation = (Ptr RawOGRMultiPolygon -> CDouble -> CInt -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> CDouble -> CInt -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_delaunaytriangulation polygonize :: OGRMultiPolygon -> IO OGRGeometry polygonize = (Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry)) -> OGRMultiPolygon -> IO OGRGeometry forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) c_ogrmultipolygon_polygonize distance3D :: forall c0. (IOGRGeometry c0, FPtr c0) => OGRMultiPolygon -> c0 -> IO CDouble distance3D = (Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CDouble) -> OGRMultiPolygon -> 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 RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CDouble c_ogrmultipolygon_distance3d instance () => IDeletable (OGRMultiPolygon) where delete :: OGRMultiPolygon -> IO () delete = (Ptr RawOGRMultiPolygon -> IO ()) -> OGRMultiPolygon -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawOGRMultiPolygon -> IO () c_ogrmultipolygon_delete