{-# LANGUAGE EmptyDataDecls, ExistentialQuantification, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MultiParamTypeClasses, ScopedTypeVariables, TypeFamilies, TypeSynonymInstances #-} module HROOT.Hist.TGraph2D.Interface where import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import FFICXX.Runtime.Cast import HROOT.Hist.TGraph2D.RawType import HROOT.Core.TNamed.Interface import HROOT.Core.TAttLine.Interface import HROOT.Core.TAttFill.Interface import HROOT.Core.TAttMarker.Interface class (ITNamed a, ITAttLine a, ITAttFill a, ITAttMarker a) => ITGraph2D a where setN :: () => a -> CInt -> IO () setPointXYZ :: () => a -> CInt -> CDouble -> CDouble -> CDouble -> IO () upcastTGraph2D :: forall a . (FPtr a, ITGraph2D a) => a -> TGraph2D upcastTGraph2D h = let fh = get_fptr h fh2 :: Ptr RawTGraph2D = castPtr fh in cast_fptr_to_obj fh2 downcastTGraph2D :: forall a . (FPtr a, ITGraph2D a) => TGraph2D -> a downcastTGraph2D h = let fh = get_fptr h fh2 = castPtr fh in cast_fptr_to_obj fh2