{-# LANGUAGE ForeignFunctionInterface, InterruptibleFFI #-} module GDAL.OGRMultiPolygon.FFI where import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import GDAL.OGRMultiPolygon.RawType import GDAL.OGRMultiPolygon.RawType import GDAL.OGRGeometry.RawType import GDAL.OGRPolygon.RawType import GDAL.OGREnvelope.RawType import GDAL.OGRPoint.RawType foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_getGeometryType" c_ogrmultipolygon_getgeometrytype :: Ptr RawOGRMultiPolygon -> IO CUInt foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_getEnvelope" c_ogrmultipolygon_getenvelope :: Ptr RawOGRMultiPolygon -> Ptr RawOGREnvelope -> IO () foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Intersects" c_ogrmultipolygon_intersects :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Equals" c_ogrmultipolygon_equals :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Disjoint" c_ogrmultipolygon_disjoint :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Touches" c_ogrmultipolygon_touches :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Crosses" c_ogrmultipolygon_crosses :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Within" c_ogrmultipolygon_within :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Contains" c_ogrmultipolygon_contains :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Overlaps" c_ogrmultipolygon_overlaps :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CBool foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Boundary" c_ogrmultipolygon_boundary :: Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Distance" c_ogrmultipolygon_distance :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CDouble foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_ConvexHull" c_ogrmultipolygon_convexhull :: Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Buffer" c_ogrmultipolygon_buffer :: Ptr RawOGRMultiPolygon -> CDouble -> CInt -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Intersection" c_ogrmultipolygon_intersection :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Union" c_ogrmultipolygon_union :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_UnionCascaded" c_ogrmultipolygon_unioncascaded :: Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Difference" c_ogrmultipolygon_difference :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_SymDifference" c_ogrmultipolygon_symdifference :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Centroid" c_ogrmultipolygon_centroid :: Ptr RawOGRMultiPolygon -> Ptr RawOGRPoint -> IO CInt foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Simplify" c_ogrmultipolygon_simplify :: Ptr RawOGRMultiPolygon -> CDouble -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_DelaunayTriangulation" c_ogrmultipolygon_delaunaytriangulation :: Ptr RawOGRMultiPolygon -> CDouble -> CInt -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Polygonize" c_ogrmultipolygon_polygonize :: Ptr RawOGRMultiPolygon -> IO (Ptr RawOGRGeometry) foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_Distance3D" c_ogrmultipolygon_distance3d :: Ptr RawOGRMultiPolygon -> Ptr RawOGRGeometry -> IO CDouble foreign import ccall interruptible "HGDALOGRMultiPolygon.h OGRMultiPolygon_delete" c_ogrmultipolygon_delete :: Ptr RawOGRMultiPolygon -> IO ()