Go to the documentation of this file.
29 #ifndef LATTICES_LATTICECONVOLVER_H
30 #define LATTICES_LATTICECONVOLVER_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/scimath/Mathematics/NumericTraits.h>
35 #include <casacore/lattices/Lattices/TempLattice.h>
36 #include <casacore/casa/Arrays/IPosition.h>
242 #ifndef CASACORE_NO_AUTO_TEMPLATES
243 #include <casacore/lattices/LatticeMath/LatticeConvolver.tcc>
244 #endif //# CASACORE_NO_AUTO_TEMPLATES
void resize(const IPosition &modelShape, ConvEnums::ConvType type)
Resize the LatticeConvolver to do convolutions of the specified type and shape.
void linear(Lattice< T > &result, const Lattice< T > &model)
Perform linear convolution of the model with the previously specified psf.
IPosition fftShape() const
Returns the shape of the FFT's that the LatticeConvolver will do when performing the convolution.
A Vector of integers, for indexing into Array<T> objects.
static IPosition calcFFTShape(const IPosition &psfShape, const IPosition &modelShape, ConvEnums::ConvType type)
Lists the different types of Convolutions that can be done.
static void unpad(Lattice< T > &result, const Lattice< T > &paddedResult)
TempLattice< T > * itsPsf
void circular(Lattice< T > &result, const Lattice< T > &model)
Perform circular convolution of the model with the previously specified psf.
LatticeConvolver()
The default constructor creates a LatticeConvolver that will convolve your data with a point spread f...
void convolve(Lattice< T > &modelAndResult) const
Perform convolution on the specified model using the currently initialised convolution type (linear o...
void makeXfr(const Lattice< T > &psf)
IPosition shape() const
Returns the shape of the Lattices that the convolver will convolve.
~LatticeConvolver()
The destructor does nothing special.
A Lattice that can be used for temporary storage.
ConvEnums::ConvType type() const
Returns the type of convolution the LatticeConvolver is currently set up to do.
this file contains all the compiler specific defines
LatticeConvolver< T > & operator=(const LatticeConvolver< T > &other)
The assignment operator also uses reference semantics.
A class for doing multi-dimensional convolution.
void makePsf(Lattice< T > &psf) const
void getPsf(Lattice< T > &psf) const
Return the psf currently used by this convolver.
ConvEnums::ConvType itsType
static void pad(Lattice< T > &paddedLat, const Lattice< T > &inLat)
A templated, abstract base class for array-like objects.
TempLattice< typename NumericTraits< T >::ConjugateType > * itsXfr
bool Bool
Define the standard types used by Casacore.
void setFastConvolve()
Set usage of fast convolve with lesser flips.
IPosition psfShape() const
Returns the shape of the point spread function that the LatticeConvolver was initialised with.