29 #ifndef SYNTHESIS_TRANSFORM2_WPROJECTFT_H
30 #define SYNTHESIS_TRANSFORM2_WPROJECTFT_H
A Vector of integers, for indexing into Array<T> objects.
A Measure: astronomical direction.
A Measure: position on Earth.
void getWeightImage(casacore::ImageInterface< casacore::Float > &, casacore::Matrix< casacore::Float > &)
Get the final weights image.
defines interface for the Fourier Transform Machine
casacore::Vector< casacore::Int > convSupport
An FTMachine for Gridded Fourier transforms.
VisibilityIterator2 iterates through one or more readonly MeasurementSets.
casacore::Int nint(casacore::Double val)
static void wStat(vi::VisibilityIterator2 &vi, casacore::Double &minW, casacore::Double &maxW, casacore::Double &rmsW)
Helper function to calculate min, max, rms of W in the data set.
casacore::Bool usezero_p
Grid/degrid zero spacing points?
casacore::Cube< casacore::Complex > convFunc
virtual Type type()
Return the type enum.
casacore::CountedPtr< WPConvFunc > wpConvFunc_p
casacore::String name() const
Return name of this machine.
virtual void normalizeImage(casacore::Lattice< casacore::Complex > &, const casacore::Matrix< casacore::Double > &, casacore::Lattice< casacore::Float > &, casacore::Bool)
ABSTRACT TOOL CLASSES A PlotTool is a higher level event handler for a PlotCanvas The idea is to take common tasks which may require multiple events and put them in one place PlotTools also provide additional functionality in that they can be active and blocking non blocking The PlotCanvas will only send events to active and will not send events to later tools or event handlers if the latest tool was blocking In this way a single tool can be used to handle ALL user interaction via the GUI at one time
casacore::Double timemass_p
casacore::IPosition centerLoc
Useful IPositions.
casacore::Vector< casacore::Double > uvScale
Image Scaling and offset.
void setConvFunc(casacore::CountedPtr< WPConvFunc > &pbconvFunc)
Copy convolution function etc to another FT machine necessary if ft and ift are distinct but can shar...
void findConvFunction(const casacore::ImageInterface< casacore::Complex > &image, const vi::VisBuffer2 &vb)
Find the convolution function.
casacore::Array< casacore::Complex > * getDataPointer(const casacore::IPosition &, casacore::Bool)
Get the appropriate data pointer.
WProjectFT(casacore::Int nFacets, casacore::Long cachesize, casacore::Int tilesize=16, casacore::Bool usezero=true, casacore::Bool useDoublePrec=false, const casacore::Double minW=-1.0, const casacore::Double maxW=-1.0, const casacore::Double rmsW=-1.0)
Constructor: cachesize is the size of the cache in words (e.g.
void finalizeToSky()
Finalize transform to Sky plane: flushes the image cache and shows statistics if it is being used...
void makeImage(FTMachine::Type type, vi::VisibilityIterator2 &vi, casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight)
Make the entire image.
LatticeExprNode floor(const LatticeExprNode &expr)
casacore::Bool toRecord(casacore::String &error, casacore::RecordInterface &outRec, casacore::Bool withImage=false, const casacore::String diskimage="")
Save and restore the WProjectFT to and from a record.
casacore::CountedPtr< casacore::Lattice< casacore::Complex > > arrayLattice
casacore::Array lattice
casacore::Vector< casacore::Double > uvOffset
void finalizeToVis()
Finalize transform to Visibility plane: flushes the image cache and shows statistics if it is being u...
casacore::Int lastIndex_p
casacore::CountedPtr< casacore::Lattice< casacore::Complex > > lattice
Lattice.
casacore::ImageInterface< casacore::Complex > & getImage(casacore::Matrix< casacore::Float > &, casacore::Bool normalize=true)
Get the final image: do the Fourier transform and grid-correct, then optionally normalize by the summ...
Simple map with keys ordered.
Referenced counted pointer for constant data.
casacore::Int getIndex(const casacore::ROMSPointingColumns &mspc, const casacore::Double &time, const casacore::Double &interval)
void initializeToVis(casacore::ImageInterface< casacore::Complex > &image, const vi::VisBuffer2 &vb)
Initialize transform to Visibility plane using the image as a template.
A class to provide easy read-only access to MSPointing columns.
casacore::Int convSampling
casacore::CountedPtr< WPConvFunc > & getConvFunc()
casacore::Float maxAbsData
Type
Types of known Images that may be made using the makeImage method.
bool Bool
Define the standard types used by Casacore.
casacore::IPosition offsetLoc
void put(const vi::VisBuffer2 &vb, casacore::Int row=-1, casacore::Bool dopsf=false, FTMachine::Type type=FTMachine::OBSERVED)
Put coherence to grid by gridding.
casacore::Bool fromRecord(casacore::String &error, const casacore::RecordInterface &inRec)
virtual FTMachine * cloneFTM()
clone to FTMachine pointer
A drop-in replacement for Block<T*>.
virtual void setMiscInfo(const casacore::Int qualifier)
set the order of the Taylor term for MFS this is to tell A-casacore::Projection to qualify the accumu...
casacore::Vector< casacore::Int > convSizes_p
casacore::LatticeCache< casacore::Complex > * imageCache
Is this record on Grid? check both ends.
casacore::Double timedegrid_p
VisBuffer2s encapsulate one chunk of visibility data for processing.
WProjectFT & operator=(const WProjectFT &other)
Assignment operator.
casacore::Double savedWScale_p
Base class for all Casacore library errors.
void initializeToSky(casacore::ImageInterface< casacore::Complex > &image, casacore::Matrix< casacore::Float > &weight, const vi::VisBuffer2 &vb)
Initialize transform to Sky plane: initializes the image.
String: the storage and methods of handling collections of characters.
casacore::String machineName_p
Abstract base class for Record classes.
virtual void ComputeResiduals(vi::VisBuffer2 &, casacore::Bool)
Make the VB and VBStore interefaces for the interim re-factoring work.
casacore::Float padding_p
Padding in FFT.
casacore::Bool isTiled
Is this tiled?
casacore::ImageInterface< casacore::Complex > * image
casacore::Long cachesize
Sizes.
casacore::Bool isFourier()
Can this FTMachine be represented by Fourier convolutions?
casacore::Double timegrid_p
casacore::ConvolveGridder< casacore::Double, casacore::Complex > * gridder
Gridder.
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.