module HROOT.Hist.TFormula.Implementation where
import FFICXX.Runtime.Cast
import HROOT.Hist.TFormula.RawType
import HROOT.Hist.TFormula.FFI
import HROOT.Hist.TFormula.Interface
import HROOT.Hist.TFormula.Cast
import HROOT.Core.TClass.RawType
import HROOT.Core.TClass.Cast
import HROOT.Core.TClass.Interface
import HROOT.Core.TNamed.RawType
import HROOT.Core.TNamed.Cast
import HROOT.Core.TNamed.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
import Data.Word
import Foreign.C
import Foreign.Ptr
import Foreign.ForeignPtr
import System.IO.Unsafe
instance ITFormula TFormula where
compile = xform1 c_tformula_compile
clear = xform1 c_tformula_clear
definedValue = xform1 c_tformula_definedvalue
eval = xform4 c_tformula_eval
evalParOld = xform2 c_tformula_evalparold
evalPar = xform2 c_tformula_evalpar
getNdim = xform0 c_tformula_getndim
getNpar = xform0 c_tformula_getnpar
getNumber = xform0 c_tformula_getnumber
getParNumber = xform1 c_tformula_getparnumber
isLinear = xform0 c_tformula_islinear
isNormalized = xform0 c_tformula_isnormalized
setNumber = xform1 c_tformula_setnumber
setParameter = xform2 c_tformula_setparameter
setParameters = xform1 c_tformula_setparameters
setParName = xform2 c_tformula_setparname
setParNames = xform11 c_tformula_setparnames
update = xform0 c_tformula_update
instance ITNamed TFormula where
setName = xform1 c_tformula_setname
setNameTitle = xform2 c_tformula_setnametitle
setTitle = xform1 c_tformula_settitle
instance ITObject TFormula where
draw = xform1 c_tformula_draw
findObject = xform1 c_tformula_findobject
getName = xform0 c_tformula_getname
isA = xform0 c_tformula_isa
paint = xform1 c_tformula_paint
printObj = xform1 c_tformula_printobj
saveAs = xform2 c_tformula_saveas
write = xform3 c_tformula_write
instance IDeletable TFormula where
delete = xform0 c_tformula_delete
instance ITFormula (Exist TFormula) where
compile (ETFormula x) = compile x
clear (ETFormula x) = clear x
definedValue (ETFormula x) = definedValue x
eval (ETFormula x) = eval x
evalParOld (ETFormula x) = evalParOld x
evalPar (ETFormula x) = evalPar x
getNdim (ETFormula x) = getNdim x
getNpar (ETFormula x) = getNpar x
getNumber (ETFormula x) = getNumber x
getParNumber (ETFormula x) = getParNumber x
isLinear (ETFormula x) = isLinear x
isNormalized (ETFormula x) = isNormalized x
setNumber (ETFormula x) = setNumber x
setParameter (ETFormula x) = setParameter x
setParameters (ETFormula x) = setParameters x
setParName (ETFormula x) = setParName x
setParNames (ETFormula x) = setParNames x
update (ETFormula x) = update x
instance ITNamed (Exist TFormula) where
setName (ETFormula x) = setName x
setNameTitle (ETFormula x) = setNameTitle x
setTitle (ETFormula x) = setTitle x
instance ITObject (Exist TFormula) where
draw (ETFormula x) = draw x
findObject (ETFormula x) = findObject x
getName (ETFormula x) = getName x
isA (ETFormula x) = isA x
paint (ETFormula x) = paint x
printObj (ETFormula x) = printObj x
saveAs (ETFormula x) = saveAs x
write (ETFormula x) = write x
instance IDeletable (Exist TFormula) where
delete (ETFormula x) = delete x
newTFormula :: CString -> CString -> IO TFormula
newTFormula = xform1 c_tformula_newtformula
tFormulaOptimize :: TFormula -> IO ()
tFormulaOptimize = xform0 c_tformula_tformulaoptimize
tFormulaGetParameter :: TFormula -> CString -> IO CDouble
tFormulaGetParameter = xform1 c_tformula_tformulagetparameter
instance FPtr (Exist TFormula) where
type Raw (Exist TFormula) = RawTFormula
get_fptr (ETFormula obj) = castForeignPtr (get_fptr obj)
cast_fptr_to_obj fptr = ETFormula (cast_fptr_to_obj (fptr :: ForeignPtr RawTFormula) :: TFormula)