HROOT-core-0.9: src/HROOT/Core/TKey/Implementation.hs
{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances,
ForeignFunctionInterface, IncoherentInstances,
MultiParamTypeClasses, OverlappingInstances, TypeFamilies,
TypeSynonymInstances #-}
module HROOT.Core.TKey.Implementation where
import FFICXX.Runtime.Cast
import Data.Word
import Foreign.C
import Foreign.Ptr
import System.IO.Unsafe
import HROOT.Core.TKey.RawType
import HROOT.Core.TKey.FFI
import HROOT.Core.TKey.Interface
import HROOT.Core.TKey.Cast
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
instance ITKey TKey
instance ITNamed TKey where
setName = xform1 c_tkey_setname
setNameTitle = xform2 c_tkey_setnametitle
setTitle = xform1 c_tkey_settitle
instance ITObject TKey where
draw = xform1 c_tkey_draw
findObject = xform1 c_tkey_findobject
getName = xform0 c_tkey_getname
isA = xform0 c_tkey_isa
paint = xform1 c_tkey_paint
printObj = xform1 c_tkey_printobj
saveAs = xform2 c_tkey_saveas
write = xform3 c_tkey_write
instance IDeletable TKey where
delete = xform0 c_tkey_delete
newTKey ::
(ITDirectory c3, FPtr c3, ITClass c2, FPtr c2, Castable c1 CString,
Castable c0 CString) =>
c0 -> c1 -> c2 -> CInt -> c3 -> IO TKey
newTKey = xform4 c_tkey_newtkey