27 #ifndef LATTICES_LATTICESTATSDATAPROVIDERBASE_H
28 #define LATTICES_LATTICESTATSDATAPROVIDERBASE_H
30 #include <casacore/scimath/StatsFramework/StatsDataProvider.h>
32 #include <casacore/scimath/Mathematics/NumericTraits.h>
33 #include <casacore/lattices/Lattices/LatticeIterator.h>
34 #include <casacore/lattices/LatticeMath/LattStatsProgress.h>
36 #include <casacore/casa/aips.h>
40 class LatticeProgress;
45 :
public StatsDataProvider<typename NumericTraits<T>::PrecisionType, const T*, const Bool*> {
109 #ifndef CASACORE_NO_AUTO_TEMPLATES
110 #include <casacore/lattices/LatticeMath/LatticeStatsDataProviderBase.tcc>
Referenced counted pointer for constant data.
Abstract base class of data providers which allows stats framework to iterate through a lattice.
Bool isInclude() const
If the associated data set has ranges, are these include (return True) or exclude (return False) rang...
virtual void finalize()
Take any actions necessary to finalize the provider.
void setRanges(const std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > &ranges, Bool isInclude)
set the data ranges
std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > getRanges()
Get the associated range(s) of the current dataset.
virtual ~LatticeStatsDataProviderBase()
std::vector< std::pair< typename NumericTraits< T >::PrecisionType, typename NumericTraits< T >::PrecisionType > > _ranges
uInt getMaskStride()
Get the stride for the current mask (only called if hasMask() returns True).
void minMaxPos(IPosition &minpos, IPosition &maxpos) const
get the positions of the min and max
void _updateMaxPos(const IPosition &maxPos)
virtual void reset()
reset the provider to point to the beginning of the first data set it manages.
const T * getWeights()
Returns NULL; lattices do not have associated weights.
Bool hasRanges() const
Does the current data set have associated range(s)?
uInt getStride()
Get the stride for the current data set.
CountedPtr< LattStatsProgress > _progressMeter
LatticeStatsDataProviderBase()
void _updateMinPos(const IPosition &minPos)
void setProgressMeter(CountedPtr< LattStatsProgress > pm)
virtual uInt estimatedSteps() const =0
estimated number of steps to iterate through the the lattice
Bool hasWeights() const
returns False; lattices do not have associated weights.
Char PrecisionType
Higher precision type (Float->Double)
Abstract base class which defines interface for providing "datasets" to the statistics framework in c...
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.