{-# LANGUAGE EmptyDataDecls, ExistentialQuantification, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MultiParamTypeClasses, ScopedTypeVariables, TypeFamilies, TypeSynonymInstances #-} module HROOT.Core.TVirtualPad.Interface where import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import FFICXX.Runtime.Cast import HROOT.Core.TVirtualPad.RawType import HROOT.Core.TObject.Interface import HROOT.Core.TAttLine.Interface import HROOT.Core.TAttFill.Interface import HROOT.Core.TAttPad.Interface import HROOT.Core.TQObject.Interface class (ITObject a, ITAttLine a, ITAttFill a, ITAttPad a, ITQObject a) => ITVirtualPad a where cd :: () => a -> CInt -> IO a divide_tvirtualpad :: () => a -> CInt -> CInt -> CFloat -> CFloat -> CInt -> IO () modified :: () => a -> CBool -> IO () range :: () => a -> CDouble -> CDouble -> CDouble -> CDouble -> IO () setLogx :: () => a -> CInt -> IO () setLogy :: () => a -> CInt -> IO () setLogz :: () => a -> CInt -> IO () update :: () => a -> IO () upcastTVirtualPad :: forall a . (FPtr a, ITVirtualPad a) => a -> TVirtualPad upcastTVirtualPad :: forall a. (FPtr a, ITVirtualPad a) => a -> TVirtualPad upcastTVirtualPad a h = let fh :: Ptr (Raw a) fh = a -> Ptr (Raw a) forall a. FPtr a => a -> Ptr (Raw a) get_fptr a h Ptr RawTVirtualPad fh2 :: Ptr RawTVirtualPad = Ptr (Raw a) -> Ptr RawTVirtualPad forall a b. Ptr a -> Ptr b castPtr Ptr (Raw a) fh in Ptr (Raw TVirtualPad) -> TVirtualPad forall a. FPtr a => Ptr (Raw a) -> a cast_fptr_to_obj Ptr (Raw TVirtualPad) Ptr RawTVirtualPad fh2 downcastTVirtualPad :: forall a . (FPtr a, ITVirtualPad a) => TVirtualPad -> a downcastTVirtualPad :: forall a. (FPtr a, ITVirtualPad a) => TVirtualPad -> a downcastTVirtualPad TVirtualPad h = let fh :: Ptr (Raw TVirtualPad) fh = TVirtualPad -> Ptr (Raw TVirtualPad) forall a. FPtr a => a -> Ptr (Raw a) get_fptr TVirtualPad h fh2 :: Ptr (Raw a) fh2 = Ptr RawTVirtualPad -> Ptr (Raw a) forall a b. Ptr a -> Ptr b castPtr Ptr (Raw TVirtualPad) Ptr RawTVirtualPad fh in Ptr (Raw a) -> a forall a. FPtr a => Ptr (Raw a) -> a cast_fptr_to_obj Ptr (Raw a) fh2