histogram-fill-0.9.1.0: Library for histograms creation.

CopyrightCopyright (c) 2009 Alexey Khudyakov <alexey.skladnoy@gmail.com>
LicenseBSD3
MaintainerAlexey Khudyakov <alexey.skladnoy@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell98

Data.Histogram.ST

Contents

Description

Mutable histograms.

Synopsis

Mutable histograms

data MHistogram s v bin a Source #

Mutable histogram.

newMHistogram :: (PrimMonad m, Bin bin, MVector v a) => a -> bin -> m (MHistogram (PrimState m) v bin a) Source #

Create new mutable histogram. All bins are set to zero element as passed to function.

fill Source #

Arguments

:: (PrimMonad m, MVector v a, Bin bin) 
=> MHistogram (PrimState m) v bin a

Mutable histogram to put value to

-> BinValue bin

Value being binned

-> (a -> b -> a)

Fold function

-> b

Value being put into histogram

-> m () 

Generic fill. It could be seen as left fold with multiple accumulators where accumulator is chosen by BinValue bin.

unsafeFreezeHist :: (PrimMonad m, Vector v a, Bin bin) => MHistogram (PrimState m) (Mutable v) bin a -> m (Histogram v bin a) Source #

Create immutable histogram from mutable one. This operation is unsafe! Accumulator mustn't be used after that

freezeHist :: (PrimMonad m, Vector v a, Bin bin) => MHistogram (PrimState m) (Mutable v) bin a -> m (Histogram v bin a) Source #

Create immutable histogram from mutable one.