casa
$Rev:20696$
|
An object to manage the caches of pre-computed convolution functions on the disk and in the memory. More...
#include <ConvFuncDiskCache.h>
An object to manage the caches of pre-computed convolution functions on the disk and in the memory.
Public interface
pre-requisites.
ConvFuncDiskCache is an object, to write convolution functions from the memory cache to the disk cache, and search/load the disk cache for convolution functions for a give Parallactic Angle.
FTMachines uses pre-computed convolution functions for gridding (FTMachine::put()) and prediction (FTMachine::get()). For PBWProjectFT , the convolution function computation is expensive. Once computed, it is efficient to cache these functions as a function of Parallactic Angle and the value of the w-term (if significant).
ConvFuncDiskCache class provides interface to the disk cache and is used in PBWProjectFT to search and load convolution functions from the disk. If a new convolution function is computed in PBWProjectFT , the disk cache is updated using the services of this class as well.
Factor out the code for managing convolution function caches (memory and disk caches) from the FTMachine code. This is a specialized service, and has nothing to do with the details of gridding and prediction of visibilities (which is the function of FTMachines).
Definition at line 107 of file ConvFuncDiskCache.h.
casa::ConvFuncDiskCache::ConvFuncDiskCache | ( | ) | [inline] |
Definition at line 110 of file ConvFuncDiskCache.h.
casa::ConvFuncDiskCache::~ConvFuncDiskCache | ( | ) | [inline] |
Definition at line 112 of file ConvFuncDiskCache.h.
void casa::ConvFuncDiskCache::cacheConvFunction | ( | Int | which, |
Float | pa, | ||
Array< Complex > & | cf, | ||
CoordinateSystem & | coords, | ||
CoordinateSystem & | ftcoords, | ||
Int & | convSize, | ||
Cube< Int > & | convSupport, | ||
Float | convSampling, | ||
String | nameQualifier = "" , |
||
Bool | savePA = True |
||
) |
void casa::ConvFuncDiskCache::cacheWeightsFunction | ( | Int | which, |
Float | pa, | ||
Array< Complex > & | cfWt, | ||
CoordinateSystem & | coords, | ||
Int & | convSize, | ||
Cube< Int > & | convSupport, | ||
Float | convSampling | ||
) |
void casa::ConvFuncDiskCache::finalize | ( | ) |
void casa::ConvFuncDiskCache::finalize | ( | ImageInterface< Float > & | avgPB | ) |
void casa::ConvFuncDiskCache::initCache | ( | ) |
void casa::ConvFuncDiskCache::loadAvgPB | ( | ImageInterface< Float > & | avgPB | ) |
Bool casa::ConvFuncDiskCache::loadConvFunction | ( | Int | where, |
Int | Nx, | ||
PtrBlock< Array< Complex > * > & | convFuncCache, | ||
Cube< Int > & | convSupport, | ||
Vector< Float > & | convSampling, | ||
Double & | cfRefFreq, | ||
CoordinateSystem & | coordys, | ||
String | prefix = "/CF" |
||
) |
ConvFuncDiskCache& casa::ConvFuncDiskCache::operator= | ( | const ConvFuncDiskCache & | other | ) |
Bool casa::ConvFuncDiskCache::searchConvFunction | ( | const VisBuffer & | vb, |
VPSkyJones & | vpSJ, | ||
Int & | which, | ||
Float & | pa | ||
) |
Bool casa::ConvFuncDiskCache::searchConvFunction | ( | const VisBuffer & | vb, |
ParAngleChangeDetector & | vpSJ, | ||
Int & | which, | ||
Float & | pa | ||
) |
void casa::ConvFuncDiskCache::setCacheDir | ( | const char * | dir | ) | [inline] |
Definition at line 113 of file ConvFuncDiskCache.h.
References Dir.
String casa::ConvFuncDiskCache::aux [private] |
Definition at line 132 of file ConvFuncDiskCache.h.
String casa::ConvFuncDiskCache::cfPrefix [private] |
Definition at line 132 of file ConvFuncDiskCache.h.
String casa::ConvFuncDiskCache::Dir [private] |
Definition at line 132 of file ConvFuncDiskCache.h.
Referenced by setCacheDir().
Vector<Float> casa::ConvFuncDiskCache::paList [private] |
Definition at line 130 of file ConvFuncDiskCache.h.
Vector<Float> casa::ConvFuncDiskCache::Sampling [private] |
Definition at line 130 of file ConvFuncDiskCache.h.
Cube<Int> casa::ConvFuncDiskCache::XSup [private] |
Definition at line 131 of file ConvFuncDiskCache.h.
Cube<Int> casa::ConvFuncDiskCache::YSup [private] |
Definition at line 131 of file ConvFuncDiskCache.h.