{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances, EmptyDataDecls, OverlappingInstances, IncoherentInstances #-} module HROOT.Class.TTree.Implementation where import HROOT.TypeCast import HROOT.Class.TTree.RawType import HROOT.Class.TTree.FFI import HROOT.Class.TTree.Interface import HROOT.Class.TTree.Cast import HROOT.Class.TClass.RawType import HROOT.Class.TClass.Cast import HROOT.Class.TClass.Interface import HROOT.Class.TNamed.RawType import HROOT.Class.TNamed.Cast import HROOT.Class.TNamed.Interface import HROOT.Class.TAttLine.RawType import HROOT.Class.TAttLine.Cast import HROOT.Class.TAttLine.Interface import HROOT.Class.TAttFill.RawType import HROOT.Class.TAttFill.Cast import HROOT.Class.TAttFill.Interface import HROOT.Class.TAttMarker.RawType import HROOT.Class.TAttMarker.Cast import HROOT.Class.TAttMarker.Interface import HROOT.Class.TObject.RawType import HROOT.Class.TObject.Cast import HROOT.Class.TObject.Interface import HROOT.Class.Deletable.RawType import HROOT.Class.Deletable.Cast import HROOT.Class.Deletable.Interface import Data.Word -- import Foreign.C -- import Foreign.Ptr import Foreign.ForeignPtr import System.IO.Unsafe instance ITTree TTree where instance ITNamed TTree where setName = xform1 c_ttree_setname setNameTitle = xform2 c_ttree_setnametitle setTitle = xform1 c_ttree_settitle instance ITAttLine TTree where getLineColor = xform0 c_ttree_getlinecolor getLineStyle = xform0 c_ttree_getlinestyle getLineWidth = xform0 c_ttree_getlinewidth resetAttLine = xform1 c_ttree_resetattline setLineAttributes = xform0 c_ttree_setlineattributes setLineColor = xform1 c_ttree_setlinecolor setLineStyle = xform1 c_ttree_setlinestyle setLineWidth = xform1 c_ttree_setlinewidth instance ITAttFill TTree where setFillColor = xform1 c_ttree_setfillcolor setFillStyle = xform1 c_ttree_setfillstyle instance ITAttMarker TTree where getMarkerColor = xform0 c_ttree_getmarkercolor getMarkerStyle = xform0 c_ttree_getmarkerstyle getMarkerSize = xform0 c_ttree_getmarkersize resetAttMarker = xform1 c_ttree_resetattmarker setMarkerAttributes = xform0 c_ttree_setmarkerattributes setMarkerColor = xform1 c_ttree_setmarkercolor setMarkerStyle = xform1 c_ttree_setmarkerstyle setMarkerSize = xform1 c_ttree_setmarkersize instance ITObject TTree where draw = xform1 c_ttree_draw findObject = xform1 c_ttree_findobject getName = xform0 c_ttree_getname isA = xform0 c_ttree_isa isFolder = xform0 c_ttree_isfolder isEqual = xform1 c_ttree_isequal isSortable = xform0 c_ttree_issortable paint = xform1 c_ttree_paint printObj = xform1 c_ttree_printobj recursiveRemove = xform1 c_ttree_recursiveremove saveAs = xform2 c_ttree_saveas useCurrentStyle = xform0 c_ttree_usecurrentstyle write = xform3 c_ttree_write instance IDeletable TTree where delete = xform0 c_ttree_delete instance ITTree (Exist TTree) where instance ITNamed (Exist TTree) where setName (ETTree x) = setName x setNameTitle (ETTree x) = setNameTitle x setTitle (ETTree x) = setTitle x instance ITAttLine (Exist TTree) where getLineColor (ETTree x) = getLineColor x getLineStyle (ETTree x) = getLineStyle x getLineWidth (ETTree x) = getLineWidth x resetAttLine (ETTree x) = resetAttLine x setLineAttributes (ETTree x) = setLineAttributes x setLineColor (ETTree x) = setLineColor x setLineStyle (ETTree x) = setLineStyle x setLineWidth (ETTree x) = setLineWidth x instance ITAttFill (Exist TTree) where setFillColor (ETTree x) = setFillColor x setFillStyle (ETTree x) = setFillStyle x instance ITAttMarker (Exist TTree) where getMarkerColor (ETTree x) = getMarkerColor x getMarkerStyle (ETTree x) = getMarkerStyle x getMarkerSize (ETTree x) = getMarkerSize x resetAttMarker (ETTree x) = resetAttMarker x setMarkerAttributes (ETTree x) = setMarkerAttributes x setMarkerColor (ETTree x) = setMarkerColor x setMarkerStyle (ETTree x) = setMarkerStyle x setMarkerSize (ETTree x) = setMarkerSize x instance ITObject (Exist TTree) where draw (ETTree x) = draw x findObject (ETTree x) = findObject x getName (ETTree x) = getName x isA (ETTree x) = isA x isFolder (ETTree x) = isFolder x isEqual (ETTree x) = isEqual x isSortable (ETTree x) = isSortable x paint (ETTree x) = paint x printObj (ETTree x) = printObj x recursiveRemove (ETTree x) = recursiveRemove x saveAs (ETTree x) = saveAs x useCurrentStyle (ETTree x) = useCurrentStyle x write (ETTree x) = write x instance IDeletable (Exist TTree) where delete (ETTree x) = delete x newTTree :: String -> String -> Int -> IO TTree newTTree = xform2 c_ttree_newttree instance FPtr (Exist TTree) where type Raw (Exist TTree) = RawTTree get_fptr (ETTree obj) = castForeignPtr (get_fptr obj) cast_fptr_to_obj fptr = ETTree (cast_fptr_to_obj (fptr :: ForeignPtr RawTTree) :: TTree)