casacore
|
#include <StatsTiledCollapser.h>
Public Member Functions | |
StatsTiledCollapser (const Vector< T > &pixelRange, Bool noInclude, Bool noExclude, Bool fixedMinMax) | |
Constructor provides pixel selection range and whether that range is an inclusion or exclusion range. More... | |
virtual | ~StatsTiledCollapser () |
virtual void | init (uInt nOutPixelsPerCollapse) |
Initialize process, making some checks. More... | |
virtual void | initAccumulator (uInt64 n1, uInt64 n3) |
Initialiaze the accumulator. More... | |
virtual void | process (uInt accumIndex1, uInt accumIndex3, const T *inData, const Bool *inMask, uInt dataIncr, uInt maskIncr, uInt nrval, const IPosition &startPos, const IPosition &shape) |
Process the data in the current chunk. More... | |
virtual void | endAccumulator (Array< U > &result, Array< Bool > &resultMask, const IPosition &shape) |
End the accumulation process and return the result arrays. More... | |
virtual Bool | canHandleNullMask () const |
Can handle null mask. More... | |
void | minMaxPos (IPosition &minPos, IPosition &maxPos) |
Find the location of the minimum and maximum data values in the input lattice. More... | |
![]() | |
virtual | ~TiledCollapser () |
Destructor. More... | |
virtual void | endAccumulator (Array< T > &result, Array< Bool > &resultMask, const IPosition &shape)=0 |
End the accumulator. More... | |
Private Member Functions | |
void | _convertNPts (Double *&nptsPtr, CountedPtr< Block< Double > > npts, CountedPtr< Block< DComplex > > nptsComplex) const |
void | _convertNPts (DComplex *&nptsPtr, CountedPtr< Block< Double > > npts, CountedPtr< Block< DComplex > > nptsComplex) const |
Private Attributes | |
Vector< T > | _range |
Bool | _include |
Bool | _exclude |
Bool | _fixedMinMax |
Bool | _isReal |
IPosition | _minpos |
IPosition | _maxpos |
CountedPtr< Block< Double > > | _npts |
Accumulators for sum, sum squared, number of points minimum, and maximum. More... | |
CountedPtr< Block< U > > | _sum |
CountedPtr< Block< U > > | _sumSq |
CountedPtr< Block< U > > | _mean |
CountedPtr< Block< U > > | _variance |
CountedPtr< Block< U > > | _nvariance |
CountedPtr< Block< U > > | _sigma |
CountedPtr< Block< T > > | _min |
CountedPtr< Block< T > > | _max |
CountedPtr< Block< Bool > > | _initMinMax |
uInt64 | _n1 |
uInt64 | _n3 |
Generate statistics, tile by tile, from a masked lattice NOTE this version was moved from LatticeStatistics (early Dec 2014 version) and slightly modified mostly for style issues (no significant semantic differences from that version). For a large number of statistics sets that need to be computed simultaneously, this version is more efficient than using the new stats framework, because creating large numbers of eg ClassicalStatistics objects is much less efficient than the direct manipulation of pointers to primitive types that this class does.
Public interface
This class is used by LatticeStatistics
to generate statistical sum from an input MaskedLattice
. The input lattice is iterated through in tile-sized chunks and fed to an object of this class.
StatsTiledCollapser
is derived from TiledCollapser
which is a base class used to define methods. Objects of this base class are used by LatticeApply
functions. In this particular case, we are interested in LatticeApply::tiledApply
. This function iterates through a MaskedLattice
and allows you to collapse one or more axes, computing some values from it, and placing those values into an output MaskedLattice
. It iterates through the input lattice in optimal tile-sized chunks. LatticeStatistics
uses a StatsTiledCollapser
object which it gives to LatticeApply::tiledApply
for digestion. After it has done its work, LatticeStatistics
then accesses the output Lattice
that it made.
In this example, a collapser is made and passed to LatticeApply. Afterwards, the output Lattice is available for use. The Lattices must all be the correct shapes on input to tiledApply
The LatticeApply classes enable the ugly details of optimal Lattice iteration to be hidden from the user.
Definition at line 113 of file StatsTiledCollapser.h.
casacore::StatsTiledCollapser< T, U >::StatsTiledCollapser | ( | const Vector< T > & | pixelRange, |
Bool | noInclude, | ||
Bool | noExclude, | ||
Bool | fixedMinMax | ||
) |
Constructor provides pixel selection range and whether that range is an inclusion or exclusion range.
If fixedMinMax=True
and an inclusion range is given, the min and max is set to that inclusion range.
|
inlinevirtual |
Definition at line 124 of file StatsTiledCollapser.h.
|
private |
|
private |
|
inlinevirtual |
Can handle null mask.
Reimplemented from casacore::TiledCollapser< T, T >.
Definition at line 147 of file StatsTiledCollapser.h.
References casacore::True.
|
virtual |
End the accumulation process and return the result arrays.
|
virtual |
Initialize process, making some checks.
Implements casacore::TiledCollapser< T, T >.
|
virtual |
Initialiaze the accumulator.
Implements casacore::TiledCollapser< T, T >.
void casacore::StatsTiledCollapser< T, U >::minMaxPos | ( | IPosition & | minPos, |
IPosition & | maxPos | ||
) |
Find the location of the minimum and maximum data values in the input lattice.
|
virtual |
Process the data in the current chunk.
Implements casacore::TiledCollapser< T, T >.
|
private |
Definition at line 155 of file StatsTiledCollapser.h.
|
private |
Definition at line 155 of file StatsTiledCollapser.h.
|
private |
Definition at line 155 of file StatsTiledCollapser.h.
|
private |
Definition at line 165 of file StatsTiledCollapser.h.
|
private |
Definition at line 155 of file StatsTiledCollapser.h.
|
private |
Definition at line 164 of file StatsTiledCollapser.h.
|
private |
Definition at line 156 of file StatsTiledCollapser.h.
|
private |
Definition at line 163 of file StatsTiledCollapser.h.
|
private |
Definition at line 164 of file StatsTiledCollapser.h.
|
private |
Definition at line 156 of file StatsTiledCollapser.h.
|
private |
Definition at line 167 of file StatsTiledCollapser.h.
|
private |
Definition at line 167 of file StatsTiledCollapser.h.
|
private |
Accumulators for sum, sum squared, number of points minimum, and maximum.
Definition at line 161 of file StatsTiledCollapser.h.
|
private |
Definition at line 163 of file StatsTiledCollapser.h.
|
private |
Definition at line 154 of file StatsTiledCollapser.h.
|
private |
Definition at line 163 of file StatsTiledCollapser.h.
|
private |
Definition at line 162 of file StatsTiledCollapser.h.
|
private |
Definition at line 162 of file StatsTiledCollapser.h.
|
private |
Definition at line 163 of file StatsTiledCollapser.h.