{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module HROOT.IO.TFile.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.IO.TFile.RawType import HROOT.IO.TFile.FFI import HROOT.IO.TFile.Interface import HROOT.IO.TFile.Cast import HROOT.IO.TFile.RawType import HROOT.IO.TFile.Cast import HROOT.IO.TFile.Interface 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.IO.TDirectoryFile.RawType import HROOT.IO.TDirectoryFile.Cast import HROOT.IO.TDirectoryFile.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 () => ITFile (TFile) where instance () => ITDirectoryFile (TFile) where instance () => ITDirectory (TFile) where append :: forall c0. (ITObject c0, FPtr c0) => TFile -> c0 -> CBool -> IO () append = (Ptr RawTFile -> Ptr RawTObject -> CBool -> IO ()) -> TFile -> c0 -> CBool -> 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 RawTFile -> Ptr RawTObject -> CBool -> IO () c_tfile_append addD :: forall c0. (ITObject c0, FPtr c0) => TFile -> c0 -> CBool -> IO () addD = (Ptr RawTFile -> Ptr RawTObject -> CBool -> IO ()) -> TFile -> c0 -> CBool -> 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 RawTFile -> Ptr RawTObject -> CBool -> IO () c_tfile_addd appendKey :: forall c0. (ITKey c0, FPtr c0) => TFile -> c0 -> IO CInt appendKey = (Ptr RawTFile -> Ptr RawTKey -> IO CInt) -> TFile -> c0 -> IO CInt 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 RawTFile -> Ptr RawTKey -> IO CInt c_tfile_appendkey close :: forall c0. Castable c0 CString => TFile -> c0 -> IO () close = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_close get :: forall c0. Castable c0 CString => TFile -> c0 -> IO TObject get = (Ptr RawTFile -> CString -> IO (Ptr RawTObject)) -> TFile -> 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 RawTFile -> CString -> IO (Ptr RawTObject) c_tfile_get cd_TDirectory :: forall c0. Castable c0 CString => TFile -> c0 -> IO CBool cd_TDirectory = (Ptr RawTFile -> CString -> IO CBool) -> TFile -> c0 -> IO CBool 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 RawTFile -> CString -> IO CBool c_tfile_cd_tdirectory instance () => ITNamed (TFile) where setName :: forall c0. Castable c0 CString => TFile -> c0 -> IO () setName = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_setname setNameTitle :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TFile -> c0 -> c1 -> IO () setNameTitle = (Ptr RawTFile -> CString -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> CString -> IO () c_tfile_setnametitle setTitle :: forall c0. Castable c0 CString => TFile -> c0 -> IO () setTitle = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_settitle instance () => ITObject (TFile) where clear :: forall c0. Castable c0 CString => TFile -> c0 -> IO () clear = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_clear draw :: forall c0. Castable c0 CString => TFile -> c0 -> IO () draw = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_draw findObject :: forall c0. Castable c0 CString => TFile -> c0 -> IO TObject findObject = (Ptr RawTFile -> CString -> IO (Ptr RawTObject)) -> TFile -> 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 RawTFile -> CString -> IO (Ptr RawTObject) c_tfile_findobject getName :: TFile -> IO CString getName = (Ptr RawTFile -> IO CString) -> TFile -> IO CString forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTFile -> IO CString c_tfile_getname isA :: TFile -> IO TClass isA = (Ptr RawTFile -> IO (Ptr RawTClass)) -> TFile -> IO TClass forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTFile -> IO (Ptr RawTClass) c_tfile_isa paint :: forall c0. Castable c0 CString => TFile -> c0 -> IO () paint = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_paint printObj :: forall c0. Castable c0 CString => TFile -> c0 -> IO () printObj = (Ptr RawTFile -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> IO () c_tfile_printobj saveAs :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TFile -> c0 -> c1 -> IO () saveAs = (Ptr RawTFile -> CString -> CString -> IO ()) -> TFile -> 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 RawTFile -> CString -> CString -> IO () c_tfile_saveas write :: forall c0. Castable c0 CString => TFile -> c0 -> CInt -> CInt -> IO CInt write = (Ptr RawTFile -> CString -> CInt -> CInt -> IO CInt) -> TFile -> 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 RawTFile -> CString -> CInt -> CInt -> IO CInt c_tfile_write write_ :: TFile -> IO CInt write_ = (Ptr RawTFile -> IO CInt) -> TFile -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTFile -> IO CInt c_tfile_write_ instance () => IDeletable (TFile) where delete :: TFile -> IO () delete = (Ptr RawTFile -> IO ()) -> TFile -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTFile -> IO () c_tfile_delete newTFile :: (Castable c2 CString, Castable c1 CString, Castable c0 CString) => c0 -> c1 -> c2 -> CInt -> IO TFile newTFile :: forall c2 c1 c0. (Castable c2 CString, Castable c1 CString, Castable c0 CString) => c0 -> c1 -> c2 -> CInt -> IO TFile newTFile = (CString -> CString -> CString -> CInt -> IO (Ptr RawTFile)) -> c0 -> c1 -> c2 -> CInt -> IO TFile 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 CString -> CString -> CString -> CInt -> IO (Ptr RawTFile) c_tfile_newtfile