packages feed

HROOT-graf-0.9: src/HROOT/Graf/TCanvas/Implementation.hs

{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances,
  ForeignFunctionInterface, IncoherentInstances,
  MultiParamTypeClasses, OverlappingInstances, TypeFamilies,
  TypeSynonymInstances #-}
module HROOT.Graf.TCanvas.Implementation where
import FFICXX.Runtime.Cast
import Data.Word
import Foreign.C
import Foreign.Ptr
import System.IO.Unsafe
import HROOT.Graf.TCanvas.RawType
import HROOT.Graf.TCanvas.FFI
import HROOT.Graf.TCanvas.Interface
import HROOT.Graf.TCanvas.Cast
import HROOT.Core.TClass.RawType
import HROOT.Core.TClass.Cast
import HROOT.Core.TClass.Interface
import HROOT.Graf.TPad.RawType
import HROOT.Graf.TPad.Cast
import HROOT.Graf.TPad.Interface
import HROOT.Core.TVirtualPad.RawType
import HROOT.Core.TVirtualPad.Cast
import HROOT.Core.TVirtualPad.Interface
import HROOT.Core.TObject.RawType
import HROOT.Core.TObject.Cast
import HROOT.Core.TObject.Interface
import HROOT.Core.Deletable.RawType
import HROOT.Core.Deletable.Cast
import HROOT.Core.Deletable.Interface

instance ITCanvas TCanvas

instance ITPad TCanvas

instance ITVirtualPad TCanvas where
        cd = xform1 c_tcanvas_cd
        divide_tvirtualpad = xform5 c_tcanvas_divide_tvirtualpad
        setLogx = xform1 c_tcanvas_setlogx
        setLogy = xform1 c_tcanvas_setlogy
        setLogz = xform1 c_tcanvas_setlogz

instance ITObject TCanvas where
        draw = xform1 c_tcanvas_draw
        findObject = xform1 c_tcanvas_findobject
        getName = xform0 c_tcanvas_getname
        isA = xform0 c_tcanvas_isa
        paint = xform1 c_tcanvas_paint
        printObj = xform1 c_tcanvas_printobj
        saveAs = xform2 c_tcanvas_saveas
        write = xform3 c_tcanvas_write

instance IDeletable TCanvas where
        delete = xform0 c_tcanvas_delete

newTCanvas ::
             (Castable c1 CString, Castable c0 CString) =>
             c0 -> c1 -> CInt -> CInt -> IO TCanvas
newTCanvas = xform3 c_tcanvas_newtcanvas