{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances, EmptyDataDecls, OverlappingInstances, IncoherentInstances #-} module HROOT.Class.TList.Implementation where import HROOT.TypeCast import HROOT.Class.TList.RawType import HROOT.Class.TList.FFI import HROOT.Class.TList.Interface import HROOT.Class.TList.Cast import HROOT.Class.TClass.RawType import HROOT.Class.TClass.Cast import HROOT.Class.TClass.Interface import HROOT.Class.TSeqCollection.RawType import HROOT.Class.TSeqCollection.Cast import HROOT.Class.TSeqCollection.Interface import HROOT.Class.TCollection.RawType import HROOT.Class.TCollection.Cast import HROOT.Class.TCollection.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 ITList TList where instance ITSeqCollection TList where instance ITCollection TList where instance ITObject TList where draw = xform1 c_tlist_draw findObject = xform1 c_tlist_findobject getName = xform0 c_tlist_getname isA = xform0 c_tlist_isa isFolder = xform0 c_tlist_isfolder isEqual = xform1 c_tlist_isequal isSortable = xform0 c_tlist_issortable paint = xform1 c_tlist_paint printObj = xform1 c_tlist_printobj recursiveRemove = xform1 c_tlist_recursiveremove saveAs = xform2 c_tlist_saveas useCurrentStyle = xform0 c_tlist_usecurrentstyle write = xform3 c_tlist_write instance IDeletable TList where delete = xform0 c_tlist_delete instance ITList (Exist TList) where instance ITSeqCollection (Exist TList) where instance ITCollection (Exist TList) where instance ITObject (Exist TList) where draw (ETList x) = draw x findObject (ETList x) = findObject x getName (ETList x) = getName x isA (ETList x) = isA x isFolder (ETList x) = isFolder x isEqual (ETList x) = isEqual x isSortable (ETList x) = isSortable x paint (ETList x) = paint x printObj (ETList x) = printObj x recursiveRemove (ETList x) = recursiveRemove x saveAs (ETList x) = saveAs x useCurrentStyle (ETList x) = useCurrentStyle x write (ETList x) = write x instance IDeletable (Exist TList) where delete (ETList x) = delete x instance FPtr (Exist TList) where type Raw (Exist TList) = RawTList get_fptr (ETList obj) = castForeignPtr (get_fptr obj) cast_fptr_to_obj fptr = ETList (cast_fptr_to_obj (fptr :: ForeignPtr RawTList) :: TList)