26#ifndef SCIMATH_STATSDATAPROVIDER_H
27#define SCIMATH_STATSDATAPROVIDER_H
29#include <casacore/scimath/StatsFramework/StatisticsTypes.h>
31#include <casacore/casa/aips.h>
40 class AccumType,
class DataIterator,
class MaskIterator=
const Bool *,
41 class WeightsIterator=DataIterator
135#ifndef CASACORE_NO_AUTO_TEMPLATES
136#include <casacore/scimath/StatsFramework/StatsDataProvider.tcc>
Abstract base class which defines interface for providing "datasets" to the statistics framework in c...
virtual uInt getNMaxThreads() const
If OpenMP is enabled and statistics methods are being called in a multi-threaded context,...
virtual uInt getMaskStride()=0
Get the stride for the current mask.
virtual DataRanges getRanges()=0
Get the associated range(s) of the current dataset.
virtual void updateMinPos(const LocationType &)
virtual void finalize()=0
Take any actions necessary to finalize the provider.
virtual WeightsIterator getWeights()=0
Get an iterator to the first weights element of the current dataset.
virtual MaskIterator getMask()=0
Get an iterator to the first element of the mask for the current dataset.
virtual Bool hasMask() const =0
Does the current data set have an associated mask?
virtual DataIterator getData()=0
get an iterator to the first element of the current dataset
virtual void reset()=0
reset the provider to point to the beginning of the first data set it manages.
virtual Bool isInclude() const =0
If the associated data set has ranges, are these include (return True) or exclude (return False) rang...
virtual ~StatsDataProvider()
virtual Bool atEnd() const =0
Are there any data sets left to provide?
virtual void operator++()=0
increment the data provider to the next dataset, mask, range set, and weights.
virtual Bool hasWeights() const =0
Does the current data set have associated weights?
virtual uInt getStride()=0
Get the stride for the current data set.
virtual Bool hasRanges() const =0
Does the current data set have associated range(s)?
virtual void updateMaxPos(const LocationType &)
In general, unless you are writing statistics algorithm code, you shouldn't need to call these method...
virtual uInt64 getCount()=0
get the count of elements in the current data set.
this file contains all the compiler specific defines
std::pair< Int64, Int64 > LocationType
bool Bool
Define the standard types used by Casacore.
unsigned long long uInt64