packages feed

HROOT-graf-0.9: src/HROOT/Graf/TCutG/Implementation.hs

{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances,
  ForeignFunctionInterface, IncoherentInstances,
  MultiParamTypeClasses, OverlappingInstances, TypeFamilies,
  TypeSynonymInstances #-}
module HROOT.Graf.TCutG.Implementation where
import FFICXX.Runtime.Cast
import Data.Word
import Foreign.C
import Foreign.Ptr
import System.IO.Unsafe
import HROOT.Graf.TCutG.RawType
import HROOT.Graf.TCutG.FFI
import HROOT.Graf.TCutG.Interface
import HROOT.Graf.TCutG.Cast
import HROOT.Hist.TF1.RawType
import HROOT.Hist.TF1.Cast
import HROOT.Hist.TF1.Interface
import HROOT.Hist.TH1F.RawType
import HROOT.Hist.TH1F.Cast
import HROOT.Hist.TH1F.Interface
import HROOT.Hist.TAxis.RawType
import HROOT.Hist.TAxis.Cast
import HROOT.Hist.TAxis.Interface
import HROOT.Core.TClass.RawType
import HROOT.Core.TClass.Cast
import HROOT.Core.TClass.Interface
import HROOT.Hist.TGraph.RawType
import HROOT.Hist.TGraph.Cast
import HROOT.Hist.TGraph.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.TAttMarker.RawType
import HROOT.Core.TAttMarker.Cast
import HROOT.Core.TAttMarker.Interface
import HROOT.Core.TObject.RawType
import HROOT.Core.TObject.Cast
import HROOT.Core.TObject.Interface
import HROOT.Core.Deletable.RawType
import HROOT.Core.Deletable.Cast
import HROOT.Core.Deletable.Interface

instance ITCutG TCutG

instance ITGraph TCutG where
        apply = xform1 c_tcutg_apply
        chisquare = xform1 c_tcutg_chisquare
        drawGraph = xform4 c_tcutg_drawgraph
        drawPanelTGraph = xform0 c_tcutg_drawpaneltgraph
        expand = xform2 c_tcutg_expand
        fitPanelTGraph = xform0 c_tcutg_fitpaneltgraph
        getCorrelationFactorTGraph
          = xform0 c_tcutg_getcorrelationfactortgraph
        getCovarianceTGraph = xform0 c_tcutg_getcovariancetgraph
        getMeanTGraph = xform1 c_tcutg_getmeantgraph
        getRMSTGraph = xform1 c_tcutg_getrmstgraph
        getErrorX = xform1 c_tcutg_geterrorx
        getErrorY = xform1 c_tcutg_geterrory
        getErrorXhigh = xform1 c_tcutg_geterrorxhigh
        getErrorXlow = xform1 c_tcutg_geterrorxlow
        getErrorYhigh = xform1 c_tcutg_geterroryhigh
        getErrorYlow = xform1 c_tcutg_geterrorylow
        initExpo = xform2 c_tcutg_initexpo
        initGaus = xform2 c_tcutg_initgaus
        initPolynom = xform2 c_tcutg_initpolynom
        insertPoint = xform0 c_tcutg_insertpoint
        integralTGraph = xform2 c_tcutg_integraltgraph
        isEditable = xform0 c_tcutg_iseditable
        isInsideTGraph = xform2 c_tcutg_isinsidetgraph
        leastSquareFit = xform4 c_tcutg_leastsquarefit
        paintStats = xform1 c_tcutg_paintstats
        removePoint = xform1 c_tcutg_removepoint
        setEditable = xform1 c_tcutg_seteditable
        setHistogram = xform1 c_tcutg_sethistogram
        setMaximumTGraph = xform1 c_tcutg_setmaximumtgraph
        setMinimumTGraph = xform1 c_tcutg_setminimumtgraph
        set = xform1 c_tcutg_set
        setPoint = xform3 c_tcutg_setpoint

instance ITNamed TCutG where
        setName = xform1 c_tcutg_setname
        setNameTitle = xform2 c_tcutg_setnametitle
        setTitle = xform1 c_tcutg_settitle

instance ITAttLine TCutG where
        getLineColor = xform0 c_tcutg_getlinecolor
        getLineStyle = xform0 c_tcutg_getlinestyle
        getLineWidth = xform0 c_tcutg_getlinewidth
        resetAttLine = xform1 c_tcutg_resetattline
        setLineAttributes = xform0 c_tcutg_setlineattributes
        setLineColor = xform1 c_tcutg_setlinecolor
        setLineStyle = xform1 c_tcutg_setlinestyle
        setLineWidth = xform1 c_tcutg_setlinewidth

instance ITAttFill TCutG where
        setFillColor = xform1 c_tcutg_setfillcolor
        setFillStyle = xform1 c_tcutg_setfillstyle

instance ITAttMarker TCutG where
        getMarkerColor = xform0 c_tcutg_getmarkercolor
        getMarkerStyle = xform0 c_tcutg_getmarkerstyle
        getMarkerSize = xform0 c_tcutg_getmarkersize
        resetAttMarker = xform1 c_tcutg_resetattmarker
        setMarkerAttributes = xform0 c_tcutg_setmarkerattributes
        setMarkerColor = xform1 c_tcutg_setmarkercolor
        setMarkerStyle = xform1 c_tcutg_setmarkerstyle
        setMarkerSize = xform1 c_tcutg_setmarkersize

instance ITObject TCutG where
        draw = xform1 c_tcutg_draw
        findObject = xform1 c_tcutg_findobject
        getName = xform0 c_tcutg_getname
        isA = xform0 c_tcutg_isa
        paint = xform1 c_tcutg_paint
        printObj = xform1 c_tcutg_printobj
        saveAs = xform2 c_tcutg_saveas
        write = xform3 c_tcutg_write

instance IDeletable TCutG where
        delete = xform0 c_tcutg_delete

newTCutG ::
           Castable c0 CString =>
           c0 -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO TCutG
newTCutG = xform3 c_tcutg_newtcutg