{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module HROOT.Core.TKey.Implementation where import Data.Monoid import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import Language.Haskell.TH import Language.Haskell.TH.Syntax import System.IO.Unsafe import FFICXX.Runtime.Cast import FFICXX.Runtime.CodeGen.Cxx import FFICXX.Runtime.TH import HROOT.Core.TKey.RawType import HROOT.Core.TKey.FFI import HROOT.Core.TKey.Interface import HROOT.Core.TKey.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 STD.Deletable.RawType import STD.Deletable.Cast import STD.Deletable.Interface instance () => ITKey (TKey) where instance () => ITNamed (TKey) where setName :: forall c0. Castable c0 CString => TKey -> c0 -> IO () setName = (Ptr RawTKey -> CString -> IO ()) -> TKey -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO () c_tkey_setname setNameTitle :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TKey -> c0 -> c1 -> IO () setNameTitle = (Ptr RawTKey -> CString -> CString -> IO ()) -> TKey -> c0 -> c1 -> IO () forall a ca x1 cx1 x2 cx2 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable y cy) => (ca -> cx1 -> cx2 -> IO cy) -> a -> x1 -> x2 -> IO y xform2 Ptr RawTKey -> CString -> CString -> IO () c_tkey_setnametitle setTitle :: forall c0. Castable c0 CString => TKey -> c0 -> IO () setTitle = (Ptr RawTKey -> CString -> IO ()) -> TKey -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO () c_tkey_settitle instance () => ITObject (TKey) where clear :: forall c0. Castable c0 CString => TKey -> c0 -> IO () clear = (Ptr RawTKey -> CString -> IO ()) -> TKey -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO () c_tkey_clear draw :: forall c0. Castable c0 CString => TKey -> c0 -> IO () draw = (Ptr RawTKey -> CString -> IO ()) -> TKey -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO () c_tkey_draw findObject :: forall c0. Castable c0 CString => TKey -> c0 -> IO TObject findObject = (Ptr RawTKey -> CString -> IO (Ptr RawTObject)) -> TKey -> c0 -> IO TObject forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO (Ptr RawTObject) c_tkey_findobject getName :: TKey -> IO CString getName = (Ptr RawTKey -> IO CString) -> TKey -> IO CString forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTKey -> IO CString c_tkey_getname isA :: TKey -> IO TClass isA = (Ptr RawTKey -> IO (Ptr RawTClass)) -> TKey -> IO TClass forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTKey -> IO (Ptr RawTClass) c_tkey_isa paint :: forall c0. Castable c0 CString => TKey -> c0 -> IO () paint = (Ptr RawTKey -> CString -> IO ()) -> TKey -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO () c_tkey_paint printObj :: forall c0. Castable c0 CString => TKey -> c0 -> IO () printObj = (Ptr RawTKey -> CString -> IO ()) -> TKey -> c0 -> IO () forall a ca x1 cx1 y cy. (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform1 Ptr RawTKey -> CString -> IO () c_tkey_printobj saveAs :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TKey -> c0 -> c1 -> IO () saveAs = (Ptr RawTKey -> CString -> CString -> IO ()) -> TKey -> c0 -> c1 -> IO () forall a ca x1 cx1 x2 cx2 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable y cy) => (ca -> cx1 -> cx2 -> IO cy) -> a -> x1 -> x2 -> IO y xform2 Ptr RawTKey -> CString -> CString -> IO () c_tkey_saveas write :: forall c0. Castable c0 CString => TKey -> c0 -> CInt -> CInt -> IO CInt write = (Ptr RawTKey -> CString -> CInt -> CInt -> IO CInt) -> TKey -> c0 -> CInt -> CInt -> IO CInt forall a ca x1 cx1 x2 cx2 x3 cx3 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> IO cy) -> a -> x1 -> x2 -> x3 -> IO y xform3 Ptr RawTKey -> CString -> CInt -> CInt -> IO CInt c_tkey_write write_ :: TKey -> IO CInt write_ = (Ptr RawTKey -> IO CInt) -> TKey -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTKey -> IO CInt c_tkey_write_ instance () => IDeletable (TKey) where delete :: TKey -> IO () delete = (Ptr RawTKey -> IO ()) -> TKey -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTKey -> IO () 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 :: forall c3 c2 c1 c0. (ITDirectory c3, FPtr c3, ITClass c2, FPtr c2, Castable c1 CString, Castable c0 CString) => c0 -> c1 -> c2 -> CInt -> c3 -> IO TKey newTKey = (CString -> CString -> Ptr RawTClass -> CInt -> Ptr RawTDirectory -> IO (Ptr RawTKey)) -> c0 -> c1 -> c2 -> CInt -> c3 -> IO TKey forall a ca x1 cx1 x2 cx2 x3 cx3 x4 cx4 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> IO y xform4 CString -> CString -> Ptr RawTClass -> CInt -> Ptr RawTDirectory -> IO (Ptr RawTKey) c_tkey_newtkey