{-# LINE 2 "./Graphics/Rendering/Cairo/Internal/Surfaces/SVG.chs" #-}
-----------------------------------------------------------------------------
-- |
-- Module : Graphics.Rendering.Cairo.Internal.Surfaces.SVG
-- Copyright : (c) Duncan Coutts 2007
-- License : BSD-style (see doc/COPYRIGHT)
--
-- Maintainer : p.martini@neuralnoise.com
-- Stability : experimental
-- Portability : portable
--
-- Rendering SVG images.
-----------------------------------------------------------------------------

module Graphics.Rendering.Cairo.Internal.Surfaces.SVG where

import Graphics.Rendering.Cairo.Types
{-# LINE 18 "./Graphics/Rendering/Cairo/Internal/Surfaces/SVG.chs" #-}

import Foreign
import Foreign.C


{-# LINE 23 "./Graphics/Rendering/Cairo/Internal/Surfaces/SVG.chs" #-}



svgSurfaceCreate :: FilePath -> Double -> Double -> IO (Surface)
svgSurfaceCreate a1 a2 a3 =
  withCAString a1 $ \a1' -> 
  let {a2' = cFloatConv a2} in 
  let {a3' = cFloatConv a3} in 
  svgSurfaceCreate'_ a1' a2' a3' >>= \res ->
  mkSurface res >>= \res' ->
  return (res')
{-# LINE 27 "./Graphics/Rendering/Cairo/Internal/Surfaces/SVG.chs" #-}

foreign import ccall safe "cairo_svg_surface_create"
  svgSurfaceCreate'_ :: ((Ptr CChar) -> (CDouble -> (CDouble -> (IO (Ptr Surface)))))