HROOT-hist-0.8: src/HROOT/Hist/TH1/Interface.hs
{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses,
FlexibleInstances, TypeSynonymInstances,
EmptyDataDecls, ExistentialQuantification, ScopedTypeVariables #-}
-- module HROOT.Class.Interface where
module HROOT.Hist.TH1.Interface where
import Data.Word
import Foreign.C
import Foreign.Ptr
import Foreign.ForeignPtr
import FFICXX.Runtime.Cast
import HROOT.Hist.TH1.RawType
import HROOT.Core.TDirectory.RawType
import HROOT.Hist.TF1.RawType
import HROOT.Core.TArrayD.RawType
import HROOT.Core.TObject.Interface
import HROOT.Core.TAttLine.Interface
import HROOT.Core.TAttFill.Interface
import HROOT.Core.TAttMarker.Interface
import HROOT.Core.TDirectory.Interface
---- ============ ----
import {-# SOURCE #-} HROOT.Hist.TF1.Interface
import {-# SOURCE #-} HROOT.Hist.TAxis.Interface
-- | the TH1 class : the mother class of all histogram classes
--
-- > class TH1 : TNamed, TAttLine, TAttFill, TAttMarker
--
class (ITObject a,ITAttLine a,ITAttFill a,ITAttMarker a) => ITH1 a where
-- |
-- > void TH1::Add( TH1* h1, Double_t c1 )
--
add :: (ITH1 c0, FPtr c0) => a -> c0 -> CDouble -> IO ()
-- |
-- > void TH1::AddBinContent( Int_t bin, Double_t w )
--
addBinContent :: a -> CInt -> CDouble -> IO ()
-- |
-- > Double_t TH1::Chi2Test( const TH1* h2, Option_t* option="UU", Double_t* res=0 ) const
--
chi2Test :: (ITH1 c0, FPtr c0) => a -> c0 -> CString -> (Ptr CDouble) -> IO CDouble
-- |
-- > Double_t TH1::ComputeIntegral ()
--
computeIntegral :: a -> IO CDouble
-- |
-- > void TH1::DirectoryAutoAdd(TDirectory* )
--
directoryAutoAdd :: (ITDirectory c0, FPtr c0) => a -> c0 -> IO ()
-- |
-- > void TH1::Divide(const TH1* h1, const TH1* h2, Double_t c1=1, Double_t c2=1, Option_t* option="")
--
divide :: (ITH1 c1, FPtr c1, ITH1 c0, FPtr c0) => a -> c0 -> c1 -> CDouble -> CDouble -> CString -> IO ()
drawCopyTH1 :: a -> CString -> IO a
-- |
-- > TH1* TH1::DrawNormalized (Option_t* option="", Double_t norm=1) const
--
drawNormalized :: a -> CString -> CDouble -> IO TH1
drawPanelTH1 :: a -> IO ()
bufferEmpty :: a -> CInt -> IO CInt
evalF :: (ITF1 c0, FPtr c0) => a -> c0 -> CString -> IO ()
fFT :: (ITH1 c0, FPtr c0) => a -> c0 -> CString -> IO TH1
fill1 :: a -> CDouble -> IO CInt
fill1w :: a -> CDouble -> CDouble -> IO CInt
fillN1 :: a -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
fillRandom :: (ITH1 c0, FPtr c0) => a -> c0 -> CInt -> IO ()
findBin :: a -> CDouble -> CDouble -> CDouble -> IO CInt
findFixBin :: a -> CDouble -> CDouble -> CDouble -> IO CInt
findFirstBinAbove :: a -> CDouble -> CInt -> IO CInt
findLastBinAbove :: a -> CDouble -> CInt -> IO CInt
fitPanelTH1 :: a -> IO ()
getNdivisionA :: a -> CString -> IO CInt
getAxisColorA :: a -> CString -> IO CInt
getLabelColorA :: a -> CString -> IO CInt
getLabelFontA :: a -> CString -> IO CInt
getLabelOffsetA :: a -> CString -> IO CDouble
getLabelSizeA :: a -> CString -> IO CDouble
getTitleFontA :: a -> CString -> IO CInt
getTitleOffsetA :: a -> CString -> IO CDouble
getTitleSizeA :: a -> CString -> IO CDouble
getTickLengthA :: a -> CString -> IO CDouble
getBarOffset :: a -> IO CDouble
getBarWidth :: a -> IO CDouble
getContour :: a -> (Ptr CDouble) -> IO CInt
getContourLevel :: a -> CInt -> IO CDouble
getContourLevelPad :: a -> CInt -> IO CDouble
getBin :: a -> CInt -> CInt -> CInt -> IO CInt
getBinCenter :: a -> CInt -> IO CDouble
getBinContent1 :: a -> CInt -> IO CDouble
getBinContent2 :: a -> CInt -> CInt -> IO CDouble
getBinContent3 :: a -> CInt -> CInt -> CInt -> IO CDouble
getBinError1 :: a -> CInt -> IO CDouble
getBinError2 :: a -> CInt -> CInt -> IO CDouble
getBinError3 :: a -> CInt -> CInt -> CInt -> IO CDouble
getBinLowEdge :: a -> CInt -> IO CDouble
getBinWidth :: a -> CInt -> IO CDouble
getCellContent :: a -> CInt -> CInt -> IO CDouble
getCellError :: a -> CInt -> CInt -> IO CDouble
getEntries :: a -> IO CDouble
getEffectiveEntries :: a -> IO CDouble
getFunction :: a -> CString -> IO TF1
getDimension :: a -> IO CInt
getKurtosis :: a -> CInt -> IO CDouble
getLowEdge :: a -> (Ptr CDouble) -> IO ()
getMaximumTH1 :: a -> CDouble -> IO CDouble
getMaximumBin :: a -> IO CInt
getMaximumStored :: a -> IO CDouble
getMinimumTH1 :: a -> CDouble -> IO CDouble
getMinimumBin :: a -> IO CInt
getMinimumStored :: a -> IO CDouble
getMean :: a -> CInt -> IO CDouble
getMeanError :: a -> CInt -> IO CDouble
getNbinsX :: a -> IO CDouble
getNbinsY :: a -> IO CDouble
getNbinsZ :: a -> IO CDouble
getQuantilesTH1 :: a -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
getRandom :: a -> IO CDouble
-- |
-- > void GetStats(Double_t *stats) const;
--
getStats :: a -> (Ptr CDouble) -> IO ()
getSumOfWeights :: a -> IO CDouble
getSumw2 :: a -> IO TArrayD
getSumw2N :: a -> IO CInt
getRMS :: a -> CInt -> IO CDouble
getRMSError :: a -> CInt -> IO CDouble
getSkewness :: a -> CInt -> IO CDouble
integral1 :: a -> CInt -> CInt -> CString -> IO CDouble
-- |
-- > Double_t Interpolate(Double_t x)
--
interpolate1 :: a -> CDouble -> IO CDouble
-- |
-- > Double_t Interpolate(Double_t x, Double_t y)
--
interpolate2 :: a -> CDouble -> CDouble -> IO CDouble
-- |
-- > Double_t Interpolate(Double_t x, Double_t y, Double_t z)
--
interpolate3 :: a -> CDouble -> CDouble -> CDouble -> IO CDouble
-- |
-- > Double_t KolmogorovTest(const TH1 *h2, Option_t *option="") const
--
kolmogorovTest :: (ITH1 c0, FPtr c0) => a -> c0 -> CString -> IO CDouble
-- |
-- > void LabelsDeflate(Option_t *axis="X")
--
labelsDeflate :: a -> CString -> IO ()
-- |
-- > void LabelsInflate(Option_t *axis="X")
--
labelsInflate :: a -> CString -> IO ()
-- |
-- > void LabelsOption(Option_t *option="h", Option_t *axis="X")
--
labelsOption :: a -> CString -> CString -> IO ()
multiflyF :: (ITF1 c0, FPtr c0) => a -> c0 -> CDouble -> IO ()
-- |
-- > void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
--
multiply :: (ITH1 c1, FPtr c1, ITH1 c0, FPtr c0) => a -> c0 -> c1 -> CDouble -> CDouble -> CString -> IO ()
-- |
-- > void PutStats(Double_t *stats)
--
putStats :: a -> (Ptr CDouble) -> IO ()
-- |
-- > TH1 *Rebin(Int_t ngroup=2, const char*newname="", const Double_t *xbins=0); // *MENU*
--
rebin :: a -> CInt -> CString -> (Ptr CDouble) -> IO TH1
-- |
-- > void RebinAxis(Double_t x, TAxis *axis)
--
rebinAxis :: (ITAxis c0, FPtr c0) => a -> CDouble -> c0 -> IO ()
-- |
-- > void Rebuild(Option_t *option="")
--
rebuild :: a -> CString -> IO ()
-- |
-- > void RecursiveRemove(TObject *obj)
--
recursiveRemove :: (ITObject c0, FPtr c0) => a -> c0 -> IO ()
-- |
-- > void Reset(Option_t *option="")
--
reset :: a -> CString -> IO ()
-- |
-- > void ResetStats()
--
resetStats :: a -> IO ()
-- |
-- > void Scale(Double_t c1=1, Option_t *option="")
--
scale :: a -> CDouble -> CString -> IO ()
-- |
-- > void SetAxisColor(Color_t color=1, Option_t *axis="X")
--
setAxisColorA :: a -> CInt -> CString -> IO ()
-- |
-- > void SetAxisRange(Double_t xmin, Double_t xmax, Option_t *axis="X")
--
setAxisRange :: a -> CDouble -> CDouble -> CString -> IO ()
-- |
-- > void SetBarOffset(Float_t offset=0.25)
--
setBarOffset :: a -> CDouble -> IO ()
-- |
-- > void SetBarWidth(Float_t width=0.5)
--
setBarWidth :: a -> CDouble -> IO ()
-- |
-- > void SetBinContent(Int_t bin, Double_t content)
--
setBinContent1 :: a -> CInt -> CDouble -> IO ()
-- |
-- > void SetBinContent(Int_t binx, Int_t biny, Double_t content)
--
setBinContent2 :: a -> CInt -> CInt -> CDouble -> IO ()
-- |
-- > void SetBinContent(Int_t binx, Int_t biny, Int_t binz, Double_t content)
--
setBinContent3 :: a -> CInt -> CInt -> CInt -> CDouble -> IO ()
setBinError1 :: a -> CInt -> CDouble -> IO ()
setBinError2 :: a -> CInt -> CInt -> CDouble -> IO ()
setBinError3 :: a -> CInt -> CInt -> CInt -> CDouble -> IO ()
setBins1 :: a -> CInt -> (Ptr CDouble) -> IO ()
setBins2 :: a -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
setBins3 :: a -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
setBinsLength :: a -> CInt -> IO ()
setBuffer :: a -> CInt -> CString -> IO ()
setCellContent :: a -> CInt -> CInt -> CDouble -> IO ()
setContent :: a -> (Ptr CDouble) -> IO ()
setContour :: a -> CInt -> (Ptr CDouble) -> IO ()
setContourLevel :: a -> CInt -> CDouble -> IO ()
setDirectory :: (ITDirectory c0, FPtr c0) => a -> c0 -> IO ()
setEntries :: a -> CDouble -> IO ()
setError :: a -> (Ptr CDouble) -> IO ()
setLabelColorA :: a -> CInt -> CString -> IO ()
setLabelSizeA :: a -> CDouble -> CString -> IO ()
setLabelFontA :: a -> CInt -> CString -> IO ()
setLabelOffsetA :: a -> CDouble -> CString -> IO ()
setMaximum :: a -> CDouble -> IO ()
setMinimum :: a -> CDouble -> IO ()
setNormFactor :: a -> CDouble -> IO ()
setStats :: a -> CInt -> IO ()
setOption :: a -> CString -> IO ()
setXTitle :: a -> CString -> IO ()
setYTitle :: a -> CString -> IO ()
setZTitle :: a -> CString -> IO ()
-- |
-- > TH1 *ShowBackground(Int_t niter=20, Option_t *option="same");
--
showBackground :: a -> CInt -> CString -> IO TH1
-- |
-- > Int_t ShowPeaks(Double_t sigma=2, Option_t *option="", Double_t threshold=0.05); // *MENU*
--
showPeaks :: a -> CDouble -> CString -> CDouble -> IO CInt
-- |
-- > void Smooth(Int_t ntimes=1, Option_t *option=""); // *MENU*
--
smooth :: a -> CInt -> CString -> IO ()
sumw2 :: a -> IO ()
instance Existable TH1 where
data Exist TH1 = forall a. (FPtr a, ITH1 a) => ETH1 a
upcastTH1 :: (FPtr a, ITH1 a) => a -> TH1
upcastTH1 h = let fh = get_fptr h
fh2 :: ForeignPtr RawTH1 = castForeignPtr fh
in cast_fptr_to_obj fh2
downcastTH1 :: (FPtr a, ITH1 a) => TH1 -> a
downcastTH1 h = let fh = get_fptr h
fh2 = castForeignPtr fh
in cast_fptr_to_obj fh2