 
 
 {#pointer GDALDriverH as Driver newtype#}
-{#pointer GDALColorTableH as ColorTable newtype#}
-{#pointer GDALRasterAttributeTableH as RasterAttributeTable newtype#}
 
 {#fun GDALAllRegister as registerAllDrivers {} -> `()'  #}
 
 {#fun GDALDestroyDriverManager as destroyDriverManager {} -> `()'#}
-
-{-# DEPRECATED withAllDriversRegistered "Don't use this since it does not destroy the driver manager anymore. registerAllDrivers manually and call destroyDriverManager at your own peril since it will likely cause a double free if a dataset's finalizer runs after destroyDriverManager" #-}
-withAllDriversRegistered act
-  = registerAllDrivers >> act
 
 {# fun unsafe GDALGetDriverByName as c_driverByName
     { `String' } -> `Driver' id #}

    deriving (Eq, Show)

datasetGeotransform :: Dataset a t -> IO Geotransform
datasetGeotransform ds = withDataset' ds $ \dPtr -> do
    allocaArray 6 $ \a -> do
      throwIfError "could not get geotransform" $ getGeoTransform dPtr a
      Geotransform <$> liftM realToFrac (peekElemOff a 0)

  , Band
  , Driver
  , DriverName
  , GComplex (..)

  , setQuietErrorHandler
  , unDataset
  , unBand

  , registerAllDrivers
  , destroyDriverManager
  , driverByName
