25#ifndef SCIMATH_STATISTICSINCREMENTER_H
26#define SCIMATH_STATISTICSINCREMENTER_H
28#include <casacore/casa/aips.h>
35template <
class DataIterator,
class MaskIterator =
const Bool*,
36 class WeightsIterator = DataIterator>
48 std::advance(datum, dataStride);
52 inline static void increment(DataIterator& datum,
uInt64& loopCount, WeightsIterator& weight,
54 std::advance(datum, dataStride);
55 std::advance(weight, dataStride);
61 std::advance(datum, dataStride);
62 std::advance(
mask, maskStride);
66 inline static void increment(DataIterator& datum,
uInt64& loopCount, WeightsIterator& weight,
68 std::advance(datum, dataStride);
69 std::advance(weight, dataStride);
70 std::advance(
mask, maskStride);
static void increment(DataIterator &datum, uInt64 &loopCount, WeightsIterator &weight, MaskIterator &mask, uInt dataStride, uInt maskStride)
static void increment(DataIterator &datum, uInt64 &loopCount, uInt dataStride)
loopCount is always incremented by one, independent of the value of dataStride and maskStride
static void increment(DataIterator &datum, uInt64 &loopCount, WeightsIterator &weight, uInt dataStride)
StatisticsIncrementer()=delete
static void increment(DataIterator &datum, uInt64 &loopCount, MaskIterator &mask, uInt dataStride, uInt maskStride)
For temporary backward namespace compatibility, use casa as alias for casacore.
LatticeExprNode mask(const LatticeExprNode &expr)
This function returns the mask of the given expression.
bool Bool
Define the standard types used by Casacore.
unsigned long long uInt64