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
bool Bool
Define the standard types used by Casacore.
unsigned long long uInt64
std::pair< Int64, Int64 > LocationType