27 #ifndef LATTICES_MASKEDLATTICESTATSDATAPROVIDER_H
28 #define LATTICES_MASKEDLATTICESTATSDATAPROVIDER_H
30 #include <casacore/lattices/LatticeMath/LatticeStatsDataProviderBase.h>
32 #include <casacore/lattices/Lattices/MaskedLattice.h>
33 #include <casacore/lattices/Lattices/MaskedLatticeIterator.h>
35 #include <casacore/casa/aips.h>
135 #ifndef CASACORE_NO_AUTO_TEMPLATES
136 #include <casacore/lattices/LatticeMath/MaskedLatticeStatsDataProvider.tcc>
Referenced counted pointer for constant data.
Abstract base class of data providers which allows stats framework to iterate through a lattice.
Data provider which allows stats framework to iterate through a masked lattice.
Bool hasMask() const
Does the current data set have an associated mask?
Bool atEnd() const
Are there any data sets left to provide?
const Bool * getMask()
Get the associated mask of the current dataset.
const T * getData()
get the current data set
MaskedLatticeStatsDataProvider()
default constructor.
uInt getNMaxThreads() const
returns something reasonable based on the lattice size.
void operator++()
increment the data provider to the next dataset, mask, range set, and weights.
void updateMinPos(const std::pair< Int64, Int64 > &minpos)
void setLattice(const MaskedLattice< T > &lattice, uInt iteratorLimitBytes=4096 *4096)
set the lattice.
void finalize()
Take any actions necessary to finalize the provider.
~MaskedLatticeStatsDataProvider()
Array< Bool > _currentMaskSlice
void reset()
reset the provider to point to the first data set it manages.
const Bool * _currentMaskPtr
uInt64 getCount()
get the count of elements in the current data set.
MaskedLatticeStatsDataProvider(MaskedLattice< T > &lattice, uInt iteratorLimitBytes=4096 *4096)
iteratorLimitBytes is related to the size of the lattice.
uInt estimatedSteps() const
estimated number of steps to iterate through the the lattice
CountedPtr< RO_MaskedLatticeIterator< T > > _iter
void updateMaxPos(const std::pair< Int64, Int64 > &maxpos)
see base class documentation.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.
unsigned long long uInt64