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