{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances, EmptyDataDecls, OverlappingInstances, IncoherentInstances #-} module HROOT.Class.TBranch.Implementation where import HROOT.TypeCast import HROOT.Class.TBranch.RawType import HROOT.Class.TBranch.FFI import HROOT.Class.TBranch.Interface import HROOT.Class.TBranch.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.TAttFill.RawType import HROOT.Class.TAttFill.Cast import HROOT.Class.TAttFill.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 ITBranch TBranch where instance ITNamed TBranch where setName = xform1 c_tbranch_setname setNameTitle = xform2 c_tbranch_setnametitle setTitle = xform1 c_tbranch_settitle instance ITAttFill TBranch where setFillColor = xform1 c_tbranch_setfillcolor setFillStyle = xform1 c_tbranch_setfillstyle instance ITObject TBranch where draw = xform1 c_tbranch_draw findObject = xform1 c_tbranch_findobject getName = xform0 c_tbranch_getname isA = xform0 c_tbranch_isa isFolder = xform0 c_tbranch_isfolder isEqual = xform1 c_tbranch_isequal isSortable = xform0 c_tbranch_issortable paint = xform1 c_tbranch_paint printObj = xform1 c_tbranch_printobj recursiveRemove = xform1 c_tbranch_recursiveremove saveAs = xform2 c_tbranch_saveas useCurrentStyle = xform0 c_tbranch_usecurrentstyle write = xform3 c_tbranch_write instance IDeletable TBranch where delete = xform0 c_tbranch_delete instance ITBranch (Exist TBranch) where instance ITNamed (Exist TBranch) where setName (ETBranch x) = setName x setNameTitle (ETBranch x) = setNameTitle x setTitle (ETBranch x) = setTitle x instance ITAttFill (Exist TBranch) where setFillColor (ETBranch x) = setFillColor x setFillStyle (ETBranch x) = setFillStyle x instance ITObject (Exist TBranch) where draw (ETBranch x) = draw x findObject (ETBranch x) = findObject x getName (ETBranch x) = getName x isA (ETBranch x) = isA x isFolder (ETBranch x) = isFolder x isEqual (ETBranch x) = isEqual x isSortable (ETBranch x) = isSortable x paint (ETBranch x) = paint x printObj (ETBranch x) = printObj x recursiveRemove (ETBranch x) = recursiveRemove x saveAs (ETBranch x) = saveAs x useCurrentStyle (ETBranch x) = useCurrentStyle x write (ETBranch x) = write x instance IDeletable (Exist TBranch) where delete (ETBranch x) = delete x instance FPtr (Exist TBranch) where type Raw (Exist TBranch) = RawTBranch get_fptr (ETBranch obj) = castForeignPtr (get_fptr obj) cast_fptr_to_obj fptr = ETBranch (cast_fptr_to_obj (fptr :: ForeignPtr RawTBranch) :: TBranch)