{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module HROOT.Core.TArrayD.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.TArrayD.RawType import HROOT.Core.TArrayD.FFI import HROOT.Core.TArrayD.Interface import HROOT.Core.TArrayD.Cast import HROOT.Core.TArrayD.RawType import HROOT.Core.TArrayD.Cast import HROOT.Core.TArrayD.Interface import HROOT.Core.TArray.RawType import HROOT.Core.TArray.Cast import HROOT.Core.TArray.Interface import STD.Deletable.RawType import STD.Deletable.Cast import STD.Deletable.Interface instance () => ITArrayD (TArrayD) where instance () => ITArray (TArrayD) where getAt = xform1 c_tarrayd_getat setArray = xform1 c_tarrayd_setarray setAt = xform2 c_tarrayd_setat instance () => IDeletable (TArrayD) where delete = xform0 c_tarrayd_delete tArrayD_At :: () => TArrayD -> CInt -> IO CDouble tArrayD_At = xform1 c_tarrayd_tarrayd_at tArrayD_GetArray :: () => TArrayD -> IO (Ptr CDouble) tArrayD_GetArray = xform0 c_tarrayd_tarrayd_getarray