{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module HROOT.Graf.TBRIK.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.TBRIK.RawType import HROOT.Graf.TBRIK.FFI import HROOT.Graf.TBRIK.Interface import HROOT.Graf.TBRIK.Cast import HROOT.Graf.TBRIK.RawType import HROOT.Graf.TBRIK.Cast import HROOT.Graf.TBRIK.Interface import HROOT.Core.TClass.RawType import HROOT.Core.TClass.Cast import HROOT.Core.TClass.Interface import HROOT.Graf.TShape.RawType import HROOT.Graf.TShape.Cast import HROOT.Graf.TShape.Interface import HROOT.Core.TNamed.RawType import HROOT.Core.TNamed.Cast import HROOT.Core.TNamed.Interface import HROOT.Core.TAttLine.RawType import HROOT.Core.TAttLine.Cast import HROOT.Core.TAttLine.Interface import HROOT.Core.TAttFill.RawType import HROOT.Core.TAttFill.Cast import HROOT.Core.TAttFill.Interface import HROOT.Core.TAtt3D.RawType import HROOT.Core.TAtt3D.Cast import HROOT.Core.TAtt3D.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 () => ITBRIK (TBRIK) where instance () => ITShape (TBRIK) where instance () => ITNamed (TBRIK) where setName :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () setName = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_setname setNameTitle :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TBRIK -> c0 -> c1 -> IO () setNameTitle = (Ptr RawTBRIK -> CString -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> CString -> IO () c_tbrik_setnametitle setTitle :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () setTitle = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_settitle instance () => ITAttLine (TBRIK) where getLineColor :: TBRIK -> IO CShort getLineColor = (Ptr RawTBRIK -> IO CShort) -> TBRIK -> IO CShort forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO CShort c_tbrik_getlinecolor getLineStyle :: TBRIK -> IO CShort getLineStyle = (Ptr RawTBRIK -> IO CShort) -> TBRIK -> IO CShort forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO CShort c_tbrik_getlinestyle getLineWidth :: TBRIK -> IO CShort getLineWidth = (Ptr RawTBRIK -> IO CShort) -> TBRIK -> IO CShort forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO CShort c_tbrik_getlinewidth resetAttLine :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () resetAttLine = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_resetattline setLineAttributes :: TBRIK -> IO () setLineAttributes = (Ptr RawTBRIK -> IO ()) -> TBRIK -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO () c_tbrik_setlineattributes setLineColor :: TBRIK -> CShort -> IO () setLineColor = (Ptr RawTBRIK -> CShort -> IO ()) -> TBRIK -> 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 RawTBRIK -> CShort -> IO () c_tbrik_setlinecolor setLineStyle :: TBRIK -> CShort -> IO () setLineStyle = (Ptr RawTBRIK -> CShort -> IO ()) -> TBRIK -> 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 RawTBRIK -> CShort -> IO () c_tbrik_setlinestyle setLineWidth :: TBRIK -> CShort -> IO () setLineWidth = (Ptr RawTBRIK -> CShort -> IO ()) -> TBRIK -> 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 RawTBRIK -> CShort -> IO () c_tbrik_setlinewidth instance () => ITAttFill (TBRIK) where setFillColor :: TBRIK -> CInt -> IO () setFillColor = (Ptr RawTBRIK -> CInt -> IO ()) -> TBRIK -> 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 RawTBRIK -> CInt -> IO () c_tbrik_setfillcolor setFillStyle :: TBRIK -> CInt -> IO () setFillStyle = (Ptr RawTBRIK -> CInt -> IO ()) -> TBRIK -> 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 RawTBRIK -> CInt -> IO () c_tbrik_setfillstyle instance () => ITAtt3D (TBRIK) where instance () => ITObject (TBRIK) where clear :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () clear = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_clear draw :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () draw = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_draw findObject :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO TObject findObject = (Ptr RawTBRIK -> CString -> IO (Ptr RawTObject)) -> TBRIK -> 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 RawTBRIK -> CString -> IO (Ptr RawTObject) c_tbrik_findobject getName :: TBRIK -> IO CString getName = (Ptr RawTBRIK -> IO CString) -> TBRIK -> IO CString forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO CString c_tbrik_getname isA :: TBRIK -> IO TClass isA = (Ptr RawTBRIK -> IO (Ptr RawTClass)) -> TBRIK -> IO TClass forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO (Ptr RawTClass) c_tbrik_isa paint :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () paint = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_paint printObj :: forall c0. Castable c0 CString => TBRIK -> c0 -> IO () printObj = (Ptr RawTBRIK -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> IO () c_tbrik_printobj saveAs :: forall c1 c0. (Castable c1 CString, Castable c0 CString) => TBRIK -> c0 -> c1 -> IO () saveAs = (Ptr RawTBRIK -> CString -> CString -> IO ()) -> TBRIK -> 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 RawTBRIK -> CString -> CString -> IO () c_tbrik_saveas write :: forall c0. Castable c0 CString => TBRIK -> c0 -> CInt -> CInt -> IO CInt write = (Ptr RawTBRIK -> CString -> CInt -> CInt -> IO CInt) -> TBRIK -> 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 RawTBRIK -> CString -> CInt -> CInt -> IO CInt c_tbrik_write write_ :: TBRIK -> IO CInt write_ = (Ptr RawTBRIK -> IO CInt) -> TBRIK -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO CInt c_tbrik_write_ instance () => IDeletable (TBRIK) where delete :: TBRIK -> IO () delete = (Ptr RawTBRIK -> IO ()) -> TBRIK -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawTBRIK -> IO () c_tbrik_delete newTBRIK :: (Castable c2 CString, Castable c1 CString, Castable c0 CString) => c0 -> c1 -> c2 -> CFloat -> CFloat -> CFloat -> IO TBRIK newTBRIK :: forall c2 c1 c0. (Castable c2 CString, Castable c1 CString, Castable c0 CString) => c0 -> c1 -> c2 -> CFloat -> CFloat -> CFloat -> IO TBRIK newTBRIK = (CString -> CString -> CString -> CFloat -> CFloat -> CFloat -> IO (Ptr RawTBRIK)) -> c0 -> c1 -> c2 -> CFloat -> CFloat -> CFloat -> IO TBRIK 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 CString -> CString -> CString -> CFloat -> CFloat -> CFloat -> IO (Ptr RawTBRIK) c_tbrik_newtbrik