26#ifndef LATTICES_TILEDCOLLAPSER_H
27#define LATTICES_TILEDCOLLAPSER_H
31#include <casacore/casa/aips.h>
32#include <casacore/casa/Arrays/ArrayFwd.h>
33#include <casacore/scimath/Mathematics/NumericTraits.h>
104 virtual void init (
uInt nOutPixelsPerCollapse) = 0;
143 const T* inData,
const Bool* inMask,
161#ifndef CASACORE_NO_AUTO_TEMPLATES
162#include <casacore/lattices/LatticeMath/TiledCollapser.tcc>
virtual void initAccumulator(uInt64 n1, uInt64 n3)=0
Create and initialize the accumulator.
virtual void endAccumulator(Array< U > &result, Array< Bool > &resultMask, const IPosition &shape)=0
End the accumulator.
virtual ~TiledCollapser()
Destructor.
virtual Bool canHandleNullMask() const
Can the process function in the derived class handle a null mask pointer? If not, LatticeApply ensure...
virtual void init(uInt nOutPixelsPerCollapse)=0
The init function for a derived class.
virtual void process(uInt accumIndex1, uInt accumIndex3, const T *inData, const Bool *inMask, uInt inDataIncr, uInt inMaskIncr, uInt nrval, const IPosition &startPos, const IPosition &shape)=0
Collapse the given input data containing (nrval values with an increment of inDataIncr elements).
this file contains all the compiler specific defines
TableExprNode shape(const TableExprNode &array)
Function operating on any scalar or array resulting in a Double array containing the shape.
bool Bool
Define the standard types used by Casacore.
unsigned long long uInt64