{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances, EmptyDataDecls, OverlappingInstances, IncoherentInstances #-} module HROOT.IO.TDirectoryFile.Implementation where import FFICXX.Runtime.Cast import HROOT.IO.TDirectoryFile.RawType import HROOT.IO.TDirectoryFile.FFI import HROOT.IO.TDirectoryFile.Interface import HROOT.IO.TDirectoryFile.Cast import HROOT.Core.TKey.RawType import HROOT.Core.TKey.Cast import HROOT.Core.TKey.Interface import HROOT.Core.TClass.RawType import HROOT.Core.TClass.Cast import HROOT.Core.TClass.Interface import HROOT.Core.TDirectory.RawType import HROOT.Core.TDirectory.Cast import HROOT.Core.TDirectory.Interface import HROOT.Core.TNamed.RawType import HROOT.Core.TNamed.Cast import HROOT.Core.TNamed.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 import Data.Word import Foreign.C import Foreign.Ptr import Foreign.ForeignPtr import System.IO.Unsafe instance ITDirectoryFile TDirectoryFile where instance ITDirectory TDirectoryFile where append = xform2 c_tdirectoryfile_append addD = xform2 c_tdirectoryfile_addd appendKey = xform1 c_tdirectoryfile_appendkey close = xform1 c_tdirectoryfile_close get = xform1 c_tdirectoryfile_get cd_TDirectory = xform1 c_tdirectoryfile_cd_tdirectory instance ITNamed TDirectoryFile where setName = xform1 c_tdirectoryfile_setname setNameTitle = xform2 c_tdirectoryfile_setnametitle setTitle = xform1 c_tdirectoryfile_settitle instance ITObject TDirectoryFile where draw = xform1 c_tdirectoryfile_draw findObject = xform1 c_tdirectoryfile_findobject getName = xform0 c_tdirectoryfile_getname isA = xform0 c_tdirectoryfile_isa paint = xform1 c_tdirectoryfile_paint printObj = xform1 c_tdirectoryfile_printobj saveAs = xform2 c_tdirectoryfile_saveas write = xform3 c_tdirectoryfile_write instance IDeletable TDirectoryFile where delete = xform0 c_tdirectoryfile_delete instance ITDirectoryFile (Exist TDirectoryFile) where instance ITDirectory (Exist TDirectoryFile) where append (ETDirectoryFile x) = append x addD (ETDirectoryFile x) = addD x appendKey (ETDirectoryFile x) = appendKey x close (ETDirectoryFile x) = close x get (ETDirectoryFile x) = get x cd_TDirectory (ETDirectoryFile x) = cd_TDirectory x instance ITNamed (Exist TDirectoryFile) where setName (ETDirectoryFile x) = setName x setNameTitle (ETDirectoryFile x) = setNameTitle x setTitle (ETDirectoryFile x) = setTitle x instance ITObject (Exist TDirectoryFile) where draw (ETDirectoryFile x) = draw x findObject (ETDirectoryFile x) = findObject x getName (ETDirectoryFile x) = getName x isA (ETDirectoryFile x) = isA x paint (ETDirectoryFile x) = paint x printObj (ETDirectoryFile x) = printObj x saveAs (ETDirectoryFile x) = saveAs x write (ETDirectoryFile x) = write x instance IDeletable (Exist TDirectoryFile) where delete (ETDirectoryFile x) = delete x instance FPtr (Exist TDirectoryFile) where type Raw (Exist TDirectoryFile) = RawTDirectoryFile get_fptr (ETDirectoryFile obj) = castForeignPtr (get_fptr obj) cast_fptr_to_obj fptr = ETDirectoryFile (cast_fptr_to_obj (fptr :: ForeignPtr RawTDirectoryFile) :: TDirectoryFile)