{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module HROOT.Graf.TArrow.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.Graf.TArrow.RawType import HROOT.Graf.TArrow.FFI import HROOT.Graf.TArrow.Interface import HROOT.Graf.TArrow.Cast import HROOT.Graf.TArrow.RawType import HROOT.Graf.TArrow.Cast import HROOT.Graf.TArrow.Interface import HROOT.Core.TClass.RawType import HROOT.Core.TClass.Cast import HROOT.Core.TClass.Interface import HROOT.Graf.TLine.RawType import HROOT.Graf.TLine.Cast import HROOT.Graf.TLine.Interface import HROOT.Core.TAttFill.RawType import HROOT.Core.TAttFill.Cast import HROOT.Core.TAttFill.Interface import HROOT.Core.TObject.RawType import HROOT.Core.TObject.Cast import HROOT.Core.TObject.Interface import HROOT.Core.TAttLine.RawType import HROOT.Core.TAttLine.Cast import HROOT.Core.TAttLine.Interface import STD.Deletable.RawType import STD.Deletable.Cast import STD.Deletable.Interface instance () => ITArrow (TArrow) where instance () => ITLine (TArrow) where drawLine :: TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO TLine drawLine = (Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTLine)) -> TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO TLine 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 Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTLine) c_tarrow_drawline drawLineNDC :: TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO TLine drawLineNDC = (Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTLine)) -> TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO TLine 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 Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTLine) c_tarrow_drawlinendc paintLine :: TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO () paintLine = (Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()) -> TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO () 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 Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO () c_tarrow_paintline paintLineNDC :: TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO () paintLineNDC = (Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()) -> TArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO () 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 Ptr RawTArrow -> CDouble -> CDouble -> CDouble -> CDouble -> IO () c_tarrow_paintlinendc setX1 :: TArrow -> CDouble -> IO () setX1 = (Ptr RawTArrow -> CDouble -> IO ()) -> TArrow -> CDouble -> 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 RawTArrow -> CDouble -> IO () c_tarrow_setx1 setX2 :: TArrow -> CDouble -> IO () setX2 = (Ptr RawTArrow -> CDouble -> IO ()) -> TArrow -> CDouble -> 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 RawTArrow -> CDouble -> IO () c_tarrow_setx2 setY1 :: TArrow -> CDouble -> IO () setY1 = (Ptr RawTArrow -> CDouble -> IO ()) -> TArrow -> CDouble -> 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 RawTArrow -> CDouble -> IO () c_tarrow_sety1 setY2 :: TArrow -> CDouble -> IO () setY2 = (Ptr RawTArrow -> CDouble -> IO ()) -> TArrow -> CDouble -> 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 RawTArrow -> CDouble -> IO () c_tarrow_sety2 instance () => ITAttFill (TArrow) where setFillColor :: TArrow -> CInt -> IO () setFillColor = (Ptr RawTArrow -> CInt -> IO ()) -> TArrow -> CInt -> 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 RawTArrow -> CInt -> IO () c_tarrow_setfillcolor setFillStyle :: TArrow -> CInt -> IO () setFillStyle = (Ptr RawTArrow -> CInt -> IO ()) -> TArrow -> CInt -> 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 RawTArrow -> CInt -> IO () c_tarrow_setfillstyle instance () => ITObject (TArrow) where clear :: forall c0. Castable c0 CString => TArrow -> c0 -> IO () clear = (Ptr RawTArrow -> CString -> IO ()) -> TArrow -> 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 RawTArrow -> CString -> IO () c_tarrow_clear draw :: forall c0. Castable c0 CString => TArrow -> c0 -> IO () draw = (Ptr RawTArrow -> CString -> IO ()) -> TArrow -> 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 RawTArrow -> CString -> IO () c_tarrow_draw findObject :: forall c0. Castable c0 CString => TArrow -> c0 -> IO TObject findObject = (Ptr RawTArrow -> CString -> IO (Ptr RawTObject)) -> TArrow -> 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 RawTArrow -> CString -> IO (Ptr RawTObject) c_tarrow_findobject getName :: TArrow -> IO CString getName = (Ptr RawTArrow -> IO CString) -> TArrow -> IO CString forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO CString c_tarrow_getname isA :: TArrow -> IO TClass isA = (Ptr RawTArrow -> IO (Ptr RawTClass)) -> TArrow -> IO TClass forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO (Ptr RawTClass) c_tarrow_isa paint :: forall c0. Castable c0 CString => TArrow -> c0 -> IO () paint = (Ptr RawTArrow -> CString -> IO ()) -> TArrow -> 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 RawTArrow -> CString -> IO () c_tarrow_paint printObj :: forall c0. Castable c0 CString => TArrow -> c0 -> IO () printObj = (Ptr RawTArrow -> CString -> IO ()) -> TArrow -> 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 RawTArrow -> CString -> IO () c_tarrow_printobj saveAs :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TArrow -> c0 -> c1 -> IO () saveAs = (Ptr RawTArrow -> CString -> CString -> IO ()) -> TArrow -> 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 RawTArrow -> CString -> CString -> IO () c_tarrow_saveas write :: forall c0. Castable c0 CString => TArrow -> c0 -> CInt -> CInt -> IO CInt write = (Ptr RawTArrow -> CString -> CInt -> CInt -> IO CInt) -> TArrow -> 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 RawTArrow -> CString -> CInt -> CInt -> IO CInt c_tarrow_write write_ :: TArrow -> IO CInt write_ = (Ptr RawTArrow -> IO CInt) -> TArrow -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO CInt c_tarrow_write_ instance () => ITAttLine (TArrow) where getLineColor :: TArrow -> IO CShort getLineColor = (Ptr RawTArrow -> IO CShort) -> TArrow -> IO CShort forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO CShort c_tarrow_getlinecolor getLineStyle :: TArrow -> IO CShort getLineStyle = (Ptr RawTArrow -> IO CShort) -> TArrow -> IO CShort forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO CShort c_tarrow_getlinestyle getLineWidth :: TArrow -> IO CShort getLineWidth = (Ptr RawTArrow -> IO CShort) -> TArrow -> IO CShort forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO CShort c_tarrow_getlinewidth resetAttLine :: forall c0. Castable c0 CString => TArrow -> c0 -> IO () resetAttLine = (Ptr RawTArrow -> CString -> IO ()) -> TArrow -> 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 RawTArrow -> CString -> IO () c_tarrow_resetattline setLineAttributes :: TArrow -> IO () setLineAttributes = (Ptr RawTArrow -> IO ()) -> TArrow -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO () c_tarrow_setlineattributes setLineColor :: TArrow -> CShort -> IO () setLineColor = (Ptr RawTArrow -> CShort -> IO ()) -> TArrow -> CShort -> 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 RawTArrow -> CShort -> IO () c_tarrow_setlinecolor setLineStyle :: TArrow -> CShort -> IO () setLineStyle = (Ptr RawTArrow -> CShort -> IO ()) -> TArrow -> CShort -> 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 RawTArrow -> CShort -> IO () c_tarrow_setlinestyle setLineWidth :: TArrow -> CShort -> IO () setLineWidth = (Ptr RawTArrow -> CShort -> IO ()) -> TArrow -> CShort -> 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 RawTArrow -> CShort -> IO () c_tarrow_setlinewidth instance () => IDeletable (TArrow) where delete :: TArrow -> IO () delete = (Ptr RawTArrow -> IO ()) -> TArrow -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTArrow -> IO () c_tarrow_delete newTArrow :: (Castable c0 CString) => CDouble -> CDouble -> CDouble -> CDouble -> CFloat -> c0 -> IO TArrow newTArrow :: forall c0. Castable c0 CString => CDouble -> CDouble -> CDouble -> CDouble -> CFloat -> c0 -> IO TArrow newTArrow = (CDouble -> CDouble -> CDouble -> CDouble -> CFloat -> CString -> IO (Ptr RawTArrow)) -> CDouble -> CDouble -> CDouble -> CDouble -> CFloat -> c0 -> IO TArrow forall a ca x1 cx1 x2 cx2 x3 cx3 x4 cx4 x5 cx5 y cy. (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> IO y xform5 CDouble -> CDouble -> CDouble -> CDouble -> CFloat -> CString -> IO (Ptr RawTArrow) c_tarrow_newtarrow