module HROOT.Class.TH2.Interface where
import Data.Word
import Foreign.ForeignPtr
import HROOT.TypeCast
import HROOT.Class.TH2.RawType
import HROOT.Class.TH1D.RawType
import HROOT.Class.TH1.Interface
import HROOT.Class.TF1.Interface
import HROOT.Class.TObjArray.Interface
class (ITH1 a) => ITH2 a where
fill2 :: a -> Double -> Double -> IO Int
fill2w :: a -> Double -> Double -> Double -> IO Int
fillN2 :: a -> Int -> [Double] -> [Double] -> [Double] -> Int -> IO ()
fillRandom2 :: (ITH1 c0, FPtr c0) => a -> c0 -> Int -> IO ()
findFirstBinAbove2 :: a -> Double -> Int -> IO Int
findLastBinAbove2 :: a -> Double -> Int -> IO Int
fitSlicesX :: (ITObjArray c1, FPtr c1, ITF1 c0, FPtr c0) => a -> c0 -> Int -> Int -> Int -> String -> c1 -> IO ()
fitSlicesY :: (ITObjArray c1, FPtr c1, ITF1 c0, FPtr c0) => a -> c0 -> Int -> Int -> Int -> String -> c1 -> IO ()
getCorrelationFactor2 :: a -> Int -> Int -> IO Double
getCovariance2 :: a -> Int -> Int -> IO Double
integral2 :: a -> Int -> Int -> Int -> Int -> String -> IO Double
rebinX2 :: a -> Int -> String -> IO TH2
rebinY2 :: a -> Int -> String -> IO TH2
rebin2D :: a -> Int -> Int -> String -> IO TH2
setShowProjectionX :: a -> Int -> IO ()
setShowProjectionY :: a -> Int -> IO ()
instance Existable TH2 where
data Exist TH2 = forall a. (FPtr a, ITH2 a) => ETH2 a
upcastTH2 :: (FPtr a, ITH2 a) => a -> TH2
upcastTH2 h = let fh = get_fptr h
fh2 :: ForeignPtr RawTH2 = castForeignPtr fh
in cast_fptr_to_obj fh2